Re: [C++/58583] ICE instantiating NSDMIs

2015-06-22 Thread Nathan Sidwell
On 06/22/15 03:37, Andreas Schwab wrote: Nathan Sidwell writes: On 06/20/15 02:09, Andreas Schwab wrote: This also fails on powerpc. what is the build compiler? It is a bootstrapped build, so the build compiler should not matter. ok, thanks. I've just built me a powerpc-

Re: [gomp4] Preserve NVPTX "reconvergence" points

2015-06-22 Thread Nathan Sidwell
it's preferable that it doesn't do something earlier to force serializeablility. -- Nathan Sidwell

[gomp4] Remove some ptxness from middle end

2015-06-22 Thread Nathan Sidwell
to use a loop. nathan -- Nathan Sidwell 2015-06-20 Nathan Sidwell gcc/ * omp-builtins.def (BUILT_IN_GOACC_NTID, BUILTIN_NCTAID): Replace with ... (BUILT_IN_GOACC_NID): ... this. (BUILT_IN_GOACC_TID, BUILTIN_CTAID): Replace with ... (BUILT_IN_GOACC_ID): ... this. * builtins.c: Incl

Re: [gomp4] Remove some ptxness from middle end

2015-06-22 Thread Nathan Sidwell
On 06/22/15 13:04, Marek Polacek wrote: On Mon, Jun 22, 2015 at 01:00:51PM -0400, Nathan Sidwell wrote: + if (GET_CODE (arg) != CONST_INT + || (unsigned HOST_WIDE_INT)INTVAL (arg) >= OACC_HWM) Don't we have UINTVAL for this? So UINTVAL (arg). Oh, thanks! will fix nathan -

Re: [gomp4] Remove some ptxness from middle end

2015-06-22 Thread Nathan Sidwell
On 06/22/15 13:04, Marek Polacek wrote: On Mon, Jun 22, 2015 at 01:00:51PM -0400, Nathan Sidwell wrote: + if (GET_CODE (arg) != CONST_INT + || (unsigned HOST_WIDE_INT)INTVAL (arg) >= OACC_HWM) Don't we have UINTVAL for this? So UINTVAL (arg). Applied the attached, after

[nvptx] add select

2015-06-23 Thread Nathan Sidwell
%r22, %r25, 4, %r27; selp.f32%r22, %r25, %r26, %r28; selp.f32%r22, %r25, 0f40a0, %r27; Approved by Bernd off list. -- Nathan Sidwell - Director, Sourcery Services - Mentor Embedded 2015-06-22 Nathan Sidwell * config/nvptx/nvptx.md (sel_true, sel_false): New

[nvptx] small cleanup patch

2015-06-26 Thread Nathan Sidwell
Bernd, I've applied this small patch to trunk. It removes some unused variables in the ptx md file and silences some build warnings. nathan -- Nathan Sidwell 2015-06-26 Nathan Sidwell * config/nvptx/nvptx.md (call_operation): Remove unused variables. Index: config/nvptx/nvp

[gomp4] openacc id builtin

2015-06-26 Thread Nathan Sidwell
I discovered a latent bug in the openacc thread id builtin and associated unspec. They should not be treated as constant functions, because that causes the compiler to consider them constant across threads. Which of course they are not. Applied to gomp4 branch nathan 2015-06-26 Nathan

[C++/66443]

2015-06-29 Thread Nathan Sidwell
an 2015-06-29 Nathan Sidwell PR c++/66443 * init.c (emit_mem_initializers): Do not emit initializers for virtual bases of abstract classes. * method.c (synthesized_method_walk): Skip virtual bases of abstract classes in C++14 mode. PR c++/66443 * cpp1y/pr66443.C: New test. Ind

Re: [C++/66443]

2015-06-30 Thread Nathan Sidwell
On 06/30/15 00:19, Jason Merrill wrote: On 06/29/2015 06:57 PM, Nathan Sidwell wrote: * method.c (synthesized_method_walk): Skip virtual bases of abstract classes in C++14 mode. Let's not limit this to C++14 mode; most DRs apply to earlier standards as well. ok, works f

[gomp] Move openacc vector& worker single handling to RTL

2015-07-03 Thread Nathan Sidwell
deletions. comments? nathan [*] a possible optimization is to do superblock discovery, and skip those in a similar manner to loop skipping. 2015-07-02 Nathan Sidwell Infrastructure: * builtins.h (builtin_unique_p): Declare. * builtins.c (builtin_unique_p): New fn

Re: [gomp] Move openacc vector& worker single handling to RTL

2015-07-04 Thread Nathan Sidwell
On 07/03/15 19:11, Jakub Jelinek wrote: On Fri, Jul 03, 2015 at 06:51:57PM -0400, Nathan Sidwell wrote: IMHO this is a step towards putting target-dependent handling in the target compiler and out of the more generic host-side compiler. The changelog is separated into 3 parts - a) general

Re: [gomp] Move openacc vector& worker single handling to RTL

2015-07-06 Thread Nathan Sidwell
On 07/04/15 16:41, Nathan Sidwell wrote: On 07/03/15 19:11, Jakub Jelinek wrote: If the builtins are not meant to be used by users directly (I assume they aren't) nor have a 1-1 correspondence to a library routine, it is much better to emit them as internal calls (see internal-fn.{

Fix some ptx breakage

2015-07-06 Thread Nathan Sidwell
I'd somehow managed to break the ptx build for trunk when merging my reorg cleanup. Fixed thusly (applied as obvious). nathan 2015-07-06 Nathan Sidwell * config/nvptx/nvptx.c (nvptx_reorg): Remove unused vars. Fix call to nvptx_reorg_subreg. Index: config/nvptx/nv

Re: [gomp] Move openacc vector& worker single handling to RTL

2015-07-07 Thread Nathan Sidwell
On 07/07/15 05:54, Jakub Jelinek wrote: On Mon, Jul 06, 2015 at 03:34:51PM -0400, Nathan Sidwell wrote: How does this interact with #pragma acc routine {gang,worker,vector,seq} ? Or is that something to be added later on? That is to be added later on. I suspect such routines will trivially

Re: [gomp] Move openacc vector& worker single handling to RTL

2015-07-07 Thread Nathan Sidwell
On 07/07/15 10:22, Jakub Jelinek wrote: On Tue, Jul 07, 2015 at 10:12:56AM -0400, Nathan Sidwell wrote: Wouldn't function attributes be better for that case, and just use the internal functions for the case when the mode is being changed in the middle of function? It may be. I&#x

Re: [gomp] Move openacc vector& worker single handling to RTL

2015-07-08 Thread Nathan Sidwell
act those regions contain loops is irrelevant to the task at hand. nathan 2015-07-08 Nathan Sidwell Infrastructure: * gimple.h (gimple_call_internal_unique_p): Declare. * gimple.c (gimple_call_same_target_p): Add check for gimple_call_internal

Re: [C++/66443] virtual base of abstract class

2015-07-08 Thread Nathan Sidwell
On 06/30/15 19:21, Nathan Sidwell wrote: On 06/30/15 00:19, Jason Merrill wrote: On 06/29/2015 06:57 PM, Nathan Sidwell wrote: * method.c (synthesized_method_walk): Skip virtual bases of abstract classes in C++14 mode. Let's not limit this to C++14 mode; most DRs apply to ea

Re: [gomp] Move openacc vector& worker single handling to RTL

2015-07-08 Thread Nathan Sidwell
On 07/08/15 10:58, Jakub Jelinek wrote: On Wed, Jul 08, 2015 at 10:47:56AM -0400, Nathan Sidwell wrote: +/* Generate loop head markers in outer->inner order. */ + +static void +gen_oacc_fork (gimple_seq *seq, unsigned mask) +{ + { +// TODDO: Determine this information from the paral

Re: [PATCH, C++] Fix PR63366: __complex not equivalent to __complex double in C++

2014-10-29 Thread Nathan Sidwell
On 10/29/14 02:47, Thomas Preud'homme wrote: It seems more sensible to keep it in this block as the existing defaulted_int block is for types for which it is not an error to omit the int type specifier. It's not an error to omit it for complex - but of course means something different. IMHO

Re: [PATCH, C++] Fix PR63366: __complex not equivalent to __complex double in C++

2014-10-29 Thread Nathan Sidwell
On 10/29/14 07:32, Thomas Preud'homme wrote: From: Nathan Sidwell [mailto:nathanmsidw...@gmail.com] On Behalf Of Oh in that case the patch is incomplete. Currently a complex alone gives an error at compilation which is why I added -fpermissive to the testcase. The patch don't c

Re: [C++ PATCH] Using decls

2019-05-21 Thread Nathan Sidwell
On 5/21/19 10:43 AM, Marek Polacek wrote: Thanks for the patch and sorry for nitpicking: On Tue, May 21, 2019 at 10:32:31AM -0400, Nathan Sidwell wrote: -/* Process a local-scope or namespace-scope using declaration. SCOPE +/* Process a local-scope or namespace-scope using declaration

[PATCH] Commonize anon-name generation

2019-05-24 Thread Nathan Sidwell
m too. Would you prefer they just be from the same set of identifiers, with another C++-specific flag bit, or have a somewhat more distinct name, as they do now? (I.e. do you want to be able to distinguish lambdas when debugging just by looking at the string?) nathan -- Nathan Sidwell 2019-05-24 N

[C++ PATCH] template specializations

2019-05-28 Thread Nathan Sidwell
his on trunk to give it wider exposure than I can on the modules branch. It has survived bootstrap on x86_64-linux. nathan -- Nathan Sidwell 2019-05-28 Nathan Sidwell * decl.c (duplicate_decls): Assert a template newdecl has no specializations. I

[C++PATCH] Lambda names are anonymous

2019-05-31 Thread Nathan Sidwell
gests replacing LAMBDA_TYPE_P with: 1) TYPE_LAMBDA_P for cases we have a type 2) DECL_LAMBDA_SCOPE_P for the context case (mirroring DECL_CLASS_SCOPE_P) I'll do that in a later patch. nathan -- Nathan Sidwell 2019-05-31 Nathan Sidwell * cp-tree.h (IDENTIFIER_LAMBDA_P): New.

[C++ PATCH] decls with error_node type

2019-05-31 Thread Nathan Sidwell
de on symbol lookups that now fail. error33.C was particularly screwy: typedef void (A::T) (); would pushing a T into the current scope. Jason, ok? nathan -- Nathan Sidwell 2019-05-31 Nathan Sidwell * decl.c (grokdeclarator): Don't create decls with error_mark_node typ

Re: [DRIVER PATCH]: Nadger subprocess argv[0]

2019-06-03 Thread Nathan Sidwell
spawn are very implementor-speak, as Sandra would say. But that's not addressed here. On 5/14/19 10:02 AM, Nathan Sidwell wrote: This patch nadgers the driver's subprocess names to include the driver name. It results in more informative error messages.  For instance, rather than:  

[C++ PATCH] structure tag lookup.

2019-06-04 Thread Nathan Sidwell
27;ve reimplemented this so we stop looking when we reach a scope we're not to look in. It also neatly separates the local binding-scope chain walking from the namespace lookup, which is the goal I had. applying to trunk. nathan -- Nathan Sidwell 2019-06-04 Nathan Sidwell * nam

Re: [C++ PATCH] structure tag lookup.

2019-06-05 Thread Nathan Sidwell
On 6/4/19 11:20 AM, Marek Polacek wrote: On Tue, Jun 04, 2019 at 11:13:14AM -0400, Nathan Sidwell wrote: [...] + /* Now check if we can look in namespace scope. */ + for (; b->kind != sk_namespace; b = b->level_chain) +if (!(b->kind == sk_cleanup + |

Re: [C++ PATCH] decls with error_node type

2019-06-05 Thread Nathan Sidwell
On 6/3/19 1:30 PM, Jason Merrill wrote: On 5/31/19 1:39 PM, Nathan Sidwell wrote: The fallout is some error cascade on symbol lookups that now fail. Right, that's why we had the previous behavior, to avoid this extra noise.  And then various places check error_operand_p to avoid tryi

[PR c++/90754] name lookup ICE

2019-06-17 Thread Nathan Sidwell
It turned out qualify_lookup was rejecting non-decls, and hence the ordering of that call relative to other tests was significant. I've restored the relative ordering to that prior to my reimplementation of lookup_type_scope_1. applying to trunk. nathan -- Nathan Sidwell 2019-06-17 N

Re: Use ODR for canonical types construction in LTO

2019-06-19 Thread Nathan Sidwell
dtor. (CLASSTYPE_NON_LAYOUT_POD_P gets set by a bunch of things that don't affect ABI layout) nathan -- Nathan Sidwell

Re: Use ODR for canonical types construction in LTO

2019-06-19 Thread Nathan Sidwell
doing the size comparison? It'd be great to comment on why you're not just using classtype_as_base there. I suppose I'm serializing this stuff too, with the same inefficiencies ... nathan -- Nathan Sidwell

Re: Use ODR for canonical types construction in LTO

2019-06-20 Thread Nathan Sidwell
On 6/20/19 12:34 AM, Jason Merrill wrote: On Wed, Jun 19, 2019 at 2:47 PM Nathan Sidwell wrote: This simple (untested) patch doesn't avoid creating the unnecessary as-base types, but it should avoid using them in a way that causes them to be streamed, and should let them be discarded

Re: Use ODR for canonical types construction in LTO

2019-06-20 Thread Nathan Sidwell
#x27;t appear in the as-base variant, and I think they could appear in the middle of the as-instance variant. that might or might not be a problem? nathan -- Nathan Sidwell

Re: Use ODR for canonical types construction in LTO

2019-06-20 Thread Nathan Sidwell
On 6/20/19 11:49 AM, Richard Biener wrote: On June 20, 2019 4:06:58 PM GMT+02:00, Nathan Sidwell wrote: On 6/20/19 9:37 AM, Richard Biener wrote: I've spent some thoughts on this and I wonder whether we can re-implement classtype-as-base with fake inheritance (which would also solve the

Re: [PATCH] Fix ODR violations in code using

2019-06-21 Thread Nathan Sidwell
able by today's implementations. Does this change seem reasonable? yes, thanks! nathan -- Nathan Sidwell

[PR c++/87531] Fix second bug

2018-12-13 Thread Nathan Sidwell
ked for fns is getting the dtor, which cannot be a dependent using decl anyway, so the request is moot.) Booted & tested in x86_64-linux, applying to trunk and gcc-8. nathan [*] there's a core or evolution paper about interpreting '<' as a template-id-expr in more place

Re: C++ PATCH for c++/79817 - attribute deprecated on namespace

2019-08-22 Thread Nathan Sidwell
an bail early. And stop at the first deprecated one -- though not sure why someone would deprecate more than one namespace in a nest. thoughts? otherwise looks good, with a good set of tests. nathan -- Nathan Sidwell

dwarf2out suspicious code

2019-08-22 Thread Nathan Sidwell
(targ_die != NULL); /* With LTO we can end up trying to reference something we didn't create a DIE for. Avoid crashing later on a NULL referenced DIE. */ if (targ_die == NULL) return; nathan -- Nathan Sidwell

[C++ PATCH] vfunc overrider simplification

2019-08-23 Thread Nathan Sidwell
the one with the same return type, so that's fine.) While there I moved the DECL_OVERRIDE_P check up and avoid needing a bool flag. committing to trunk. nathan -- Nathan Sidwell 2019-08-23 Nathan Sidwell * class.c (check_for_override): Checking IDENTIFIER_VIRTUAL_P is suffi

Re: C++ PATCH for c++/79817 - attribute deprecated on namespace

2019-08-23 Thread Nathan Sidwell
On 8/23/19 5:27 PM, Jason Merrill wrote: On 8/23/19 11:55 AM, Marek Polacek wrote: Bootstrapped/regtested on x86_64-linux, ok for trunk? OK on Monday if Nathan doesn't have more comments before then. ok by me, thanks nathan -- Nathan Sidwell

Re: [C++ PATCH] vfunc overrider simplification

2019-08-24 Thread Nathan Sidwell
On 8/23/19 3:24 PM, Nathan Sidwell wrote: In fixing a vfunc override bug on the modules branch, I noticed that check_for_override can simply check IDENTIFIER_VIRTUAL_P -- the dtor identifier and those for conversion operators will have it set correctly.  (there a multiple conversion operator

Re: [C++ PATCH] vfunc overrider simplification

2019-08-26 Thread Nathan Sidwell
On 8/25/19 2:35 PM, Jason Merrill wrote: On Sat, Aug 24, 2019 at 6:43 PM Nathan Sidwell <mailto:nat...@acm.org>> wrote: On 8/23/19 3:24 PM, Nathan Sidwell wrote: > In fixing a vfunc override bug on the modules branch, I noticed that > check_for_override c

[PR c++/90613] Fix using-decl debug bloat

2019-08-28 Thread Nathan Sidwell
only wanted to check dwarf, because I know how to do that :) Committing to trunk. nathan -- Nathan Sidwell 2019-08-28 Nathan Sidwell cp/ PR c++/90613 * name-lookup.c (cp_emit_debug_info): Check for builtins during overload iteration. 2019-08-16 Martin Liska testsuite/ PR c++/90613

[Preprocessor] small cleanups

2019-08-28 Thread Nathan Sidwell
From the modules branch, here are some cleanups inspired by changes I've made there. 1) directive handling gets a bool arg, not a 0/1 int 2) documented the enumerators of an enum 3) make a bunch of structure flags 1-bit bools. applying to trunk. nathan -- Nathan Sidwell 2019-08-28 N

Re: [Preprocessor] small cleanups

2019-08-29 Thread Nathan Sidwell
On 8/29/19 3:57 AM, Bernhard Reutner-Fischer wrote: On Wed, 28 Aug 2019 14:42:57 -0400 Nathan Sidwell wrote: /* If opened with #import or contains #pragma once. */ - bool once_only; + bool once_only : 1; I'm curious why you have them as bool and not unsigned? because they&#x

[preprocessor] Include stacking

2019-08-29 Thread Nathan Sidwell
n to _cpp_stack_file. Applying to trunk. nathan -- Nathan Sidwell 2019-08-29 Nathan Sidwell * internal.h (enum include_type): Add IT_MAIN, IT_DIRECTIVE_HWM, IT_HEADER_HWM. (_cpp_stack_file): Take include_type, not a bool. * files.c (_cpp_find_file): Refactor to not hide an if inside a

[C++ PATCH] vtable decl marking

2019-08-30 Thread Nathan Sidwell
ached patch survives bootstraping, so I'll install it next week, if there's no objections. nathan -- Nathan Sidwell 2019-08-30 Nathan Sidwell * cp-tree.h (DECL_VTABLE_OR_VTT_P): Forward to DECL_VIRTUAL_P. Index: g

[preprocessor] Popping "" file names

2019-08-30 Thread Nathan Sidwell
sh/pop/system-header flags. I intend to commit this next week, to allow for comments. nathan -- Nathan Sidwell 2019-08-30 Nathan Sidwell New # semantics for popping to "" name. libcpp/ * directives.c (do_linemarker): Popping to "" name means get the name from the include

Re: [PATCH] Deprecate -frepo option.

2019-09-04 Thread Nathan Sidwell
the end of stage1. I think it'd be ok to install it during stage3 (perhaps early feb?). More chance of people speaking up. nathan -- Nathan Sidwell

Re: [PATCH] Deprecate -frepo option.

2019-09-05 Thread Nathan Sidwell
On 9/5/19 6:03 AM, Martin Liška wrote: On 9/5/19 12:01 PM, Richard Biener wrote: On Wed, Sep 4, 2019 at 2:57 PM Nathan Sidwell wrote: On 9/4/19 7:20 AM, Martin Liška wrote: On 9/4/19 11:22 AM, Jonathan Wakely wrote: The point of the warning was to see if users complain. Three weeks

[preprocessor/91639] #includes at EOF

2019-09-05 Thread Nathan Sidwell
d in those cases (or we simply waste linemap space). This ends up making the include rewinding simpler -- there are still cases it shouldn't. Applying to trunk. -- Nathan Sidwell 2019-09-05 Nathan Sidwell libcpp/ PR preprocessor/91639 * directives.c (do_include_common): Tell lexer w

[C++ PATCH] Reserve a decl_lang bit

2019-09-06 Thread Nathan Sidwell
rging proper later this year, and that'll of course involve other maintainers' reviews. nathan -- Nathan Sidwell 2019-09-06 Nathan Sidwell Reserve TREE_LANG_FLAG_3 for modules. gcc/cp/ * cp-tree.h (DECL_CONSTRUCTION_VTABLE_P): Delete. (DECL_NON_TRIVIALLY_INITIALIZED_P): Move to T

Re: [PATCH] Deprecate -frepo option.

2019-09-06 Thread Nathan Sidwell
[CCs trimmed] On 9/6/19 2:58 AM, Martin Liška wrote: Ok, hopefully nobody is strongly against. I've just retested the patch and installed it as r275450. Martin missed a couple of spots. Installing this. 1 bit freed! nathan -- Nathan Sidwell 2019-09-06 Nathan Sidwell PR c++/

[PATCH] some tree struct marking

2019-09-10 Thread Nathan Sidwell
he common tree_node_structure_for_code to be a little clearer in what it's doing. (these switch statements seem a fine exception to the usual formatting rules) I'll commit to trunk shortly, as the non-c++ bits are sufficiently obvious. nathan -- Nathan Sidwell 2019-09-10 Nathan Sidwell

[C++ PATCH] simplify clone predicate

2019-09-15 Thread Nathan Sidwell
sly that was harmless but now causes the predicate to assert. Applying to trunk. nathan -- Nathan Sidwell 2019-09-15 Nathan Sidwell * cp-tree.h (DECL_CLONED_FUNCTION_P): Reimplement using IDENTIFIER_CDTOR_P, correct documentation. (DECL_CLONED_FUNCTION): Directly acce

[C++ PATCH] parser simplification

2018-10-11 Thread Nathan Sidwell
than Sidwell 2018-10-11 Nathan Sidwell cp/ * parser.c (cp_parser_translation_unit): Return void. Don't fail at first extra }, simplify logic. (c_parse_file): Call finish_translation_unit here. testsuite/ * g++.dg/parse/close-brace.C: New. * g++.dg/cpp0x/noexcept16.C: Avoid warning.

[C++ PATCH] more TU parsing refactoring

2018-10-12 Thread Nathan Sidwell
ern_c processing is moved to cp_parser_translation_unit. If you're switching between differently IEC headers inside a namespace, or extern-C region, you're doing it very wrong. Built and tested on x86_64-linux and powerpc8-aix (the remaining implicit extern C target). nathan -- Nathan Sid

[C++ PATCH] Simplify overloads

2018-10-31 Thread Nathan Sidwell
rst (non-hidden) decl to find out it was needed. I've been using a variant of this on the modules branch for some time. booted & tested on x86_64-linux, applying to trunk. nathan -- Nathan Sidwell 2018-10-31 Nathan Sidwell gcc/cp/ * cp-tree.h (OVL_DEDUP_P): New. * na

[1/7] Preprocessor cleanup

2018-10-31 Thread Nathan Sidwell
indentation error fixed too. Applying to trunk. nathan -- Nathan Sidwell 2018-10-31 Nathan Sidwell * directives.c (DIRECTIVE_TABLE): Drop historical frequency comments. * files.c (_cpp_stack_file): Fix indentation. Index: libcpp/directives.c

[2/7] Preprocessor node access

2018-10-31 Thread Nathan Sidwell
The hashnode identifier accessor macro unnecessarily casts its operand, and the derived accessors don't use it. Fixed thusly. applying to trunk. -- Nathan Sidwell 2018-10-31 Nathan Sidwell * include/cpplib.h (HT_NODE): Don't cast NODE. (NODE_LEN, NODE_NAME): Use HT_NODE. Ind

[3/7] Preprocessor macro loc

2018-10-31 Thread Nathan Sidwell
Now that the cpp_macro structure is properly part of cpplib.h, we don't need to outline its location accessor function. Made inline thusly. Cleaned up duplicate macro checking a bit too. applying to trunk nathan -- Nathan Sidwell 2018-10-31 Nathan Sidwell * include/cpp

[4/7] Preprocessor location-kind predicates

2018-10-31 Thread Nathan Sidwell
This fills out the set of location-kind predicates, and uses them in a couple more places. There may well be other places that could benefit. Applying to trunk. -- Nathan Sidwell 2018-10-31 Nathan Sidwell * include/line-map.h (IS_ORDINARY_LOC, IS_MACRO_LOC): New predicates

[5/6] Preprocessor include

2018-10-31 Thread Nathan Sidwell
[Yes, I can't count] Include file handling duplicated cleanup code in each exit path. Simpler to just commonize it with goto. Also noticed a memory leak in buffer popping. Applying to trunk. -- Nathan Sidwell 2018-10-31 Nathan Sidwell * directives.c (do_include_common): Comm

[6/6] Preprocessor forced macro location

2018-10-31 Thread Nathan Sidwell
e forcing UNKNOWN_LOCATION, I'd argue you're doing it wrong. This patch changes that API to take a location directly, and ban forcing UNKNOWN_LOCATION. booted & tested on x86_64-linux (as were all the others). Applying to trunk. nathan -- Nathan Sidwell 2018-10-31 Nathan Sidwell

Re: [5/6] Preprocessor include

2018-10-31 Thread Nathan Sidwell
On 10/31/18 11:44 AM, Marek Polacek wrote: + else if (to_free) +free ((void *)to_free); free (NULL) is ok so do you really need the check? Probably not :) IIRC the if (X) free (X) idiom was nearby, and I didn't feel like rocking that boat. nathan -- Nathan Sidwell

[PATCH] command line macros

2018-10-31 Thread Nathan Sidwell
handling afterwards. booted and tested on x86_64-linux, applying to trunk. nathan -- Nathan Sidwell 2018-10-31 Nathan Sidwell * c-opts.c (c_finish_options): Force command line macro location. Refactor to avoid repeating main debug hook. (push_command_line_include): Clarify comment. Index: gcc/c

[C++ PATCH] missed testcase

2018-10-31 Thread Nathan Sidwell
I missed committing this testcase with the recent unsorted overload change. nathan -- Nathan Sidwell 2018-10-31 Nathan Sidwell * g++.dg/lookup/friend21.C: New. Index: testsuite/g++.dg/lookup/friend21.C === --- testsuite/g++.dg

[ABI PATCH] static anonymous unions of function scope

2018-10-31 Thread Nathan Sidwell
tives. booted & tested on x86_64-linux nathan -- Nathan Sidwell 2018-10-31 Nathan Sidwell * cp-tree.h (struct lang_function): Delete x_local_names field. (struct lang_decl_base): Rename u2sel to spare. (struct lang_decl_min): Remove lang_decl_u2 union. Keep access field. (LANG_DE

[C++ PATCH] refactor duplicate_decls

2018-11-02 Thread Nathan Sidwell
t checking. Applying to trunk after an x86_64-linux bootstrap. nathan -- Nathan Sidwell 2018-11-01 Nathan Sidwell gcc/cp/ * decl.c (duplicate_decls): Refactor checks. * name-lookup.c (name_lookup::process_module_binding): Only pubic namespaces are shared. gcc/testsuite/ * g++.dg/lookup/crash6

[PR C++/87904] lookup ICE

2018-11-07 Thread Nathan Sidwell
My recent relaxing of overload ordering broken an invariant that unhiding a hidden decl was assuming. Fixed thusly. nathan -- Nathan Sidwell 2018-11-07 Nathan Sidwell PR c++/87904 * cp-tree.h (struct tree_overload): Fix comment. * tree.c (ovl_iterator::reveal_node): Propagate

[PR/87936] --disable-checking bootstrap break

2018-11-07 Thread Nathan Sidwell
I'm committing this to unbreak a --disable-checking bootstrap build failure. As documented in the PR we think there's an out of bound array access. nathan -- Nathan Sidwell 2018-11-07 Nathan Sidwell PR 87926 * Makefile.in (bitmap.o-warn): Add -Wno-error to unbreak --disabl

[debug/88006] -fdebug-types-section gives undefined ref

2018-11-14 Thread Nathan Sidwell
emission, but not having a symtab entry seems significant? booted & tested on x86_64-linux, ok? nathan -- Nathan Sidwell 2018-11-14 Nathan Sidwell PR debug/88006 PR debug/87462 * dwarf2out.c (const_ok_for_output_1): Check symtab for internal decls. * g++.dg/debug/dwarf2/pr87462.C:

Re: [debug/88006] -fdebug-types-section gives undefined ref

2018-11-14 Thread Nathan Sidwell
Similarly for SYMBOL_REFs, keep only those that refer to something that has been emitted in the current CU. */ static void resolve_addr (dw_die_ref die) { That does seem to work. The attached survise bootstrapping on x86_64-linux, ok? nathan -- Nathan Sidwell 2018-11-14 Nathan Sidwell

[C++ DR 2336] Clean up synth walkers first

2018-11-15 Thread Nathan Sidwell
removes that confusion. I reorder SFK members to be useful for these functions, add a set of new predicates and then adjust the 3 functions to use those predicates, drop the bools and consistently order their parameters. Applying to trunk after an x6_64-linux bootstrap. nathan -- Nathan Sidwell

[C++ DR 2336] virtual dtors, exception specs & abstract classes

2018-11-15 Thread Nathan Sidwell
(it does not distinguish between virtual and non-virtual dtors of virtual bases). booted on x6_64-linux, committing to trunk. nathan -- Nathan Sidwell 2018-11-15 Nathan Sidwell DR 2336 * cp-tree.h (enum special_function_kind): Add sfk_virtual_destructor. * method.c (type_has_trivial_fn

[PR c++/86246] ICE tsubst explicit operator call

2018-11-15 Thread Nathan Sidwell
oth. booted & tested on x86_64-linux, applying to trunk. nathan -- Nathan Sidwell 2018-11-15 Nathan Sidwell PR c++/86246 PR c++/87989 * typeck.c (finish_class_member_access_expr): Conversion operator to dependent type is dependent. * g++.dg/template/pr86246.C: New. * g++.dg/templa

Re: [PATCH] Reject too large string literals (PR middle-end/87854)

2018-11-16 Thread Nathan Sidwell
e anything similar for string literals. As internally we use host int as TREE_STRING_LENGTH, this is relevant to targets that have < 32-bit size_t only. The following patch adds that diagnostics and truncates the string literals. Ok by me. nathan -- Nathan Sidwell

[PR c++/87269] Mark string operator overload in template defn.

2018-11-16 Thread Nathan Sidwell
This was a case of not marking the overloads of a lookup as immutable, leading to an assert failure. Applying to trunk. nathan -- Nathan Sidwell 2018-11-16 Nathan Sidwell PR c++/87269 * parser.c (lookup_literal_operator): Mark overload for keeping when inside template. Refactor. * g

[C++ PATCH] OVL_USED not needed

2018-11-16 Thread Nathan Sidwell
. It is unreachable. Applying to trunk. nathan -- Nathan Sidwell 2018-11-16 Nathan Sidwell Remove ovl_used, it is no longer needed * cp-tree.h (OVL_USED_P): Delete. (lookup_keep): Delete. * friend.c (add_friend): Don't call it. * parser.c (lookup_literal_opera

Re: [PATCH[ Fix pr87269.C testcase

2018-11-16 Thread Nathan Sidwell
Yeah, thanks Jakubnathan-- Nathan Sidwell Original message From: Jakub Jelinek Date: 11/16/18 15:50 (GMT-05:00) To: Nathan Sidwell , Jason Merrill Cc: GCC Patches Subject: [PATCH[ Fix pr87269.C testcase On Fri, Nov 16, 2018 at 10:01:05AM -0500, Nathan Sidwell wrote:> 2

[PR 87926] bitmap -Wno-error=array-bounds

2018-11-20 Thread Nathan Sidwell
Applying a more focussed fix, as suggested by Richard. nathan -- Nathan Sidwell 2018-11-20 Nathan Sidwell PR 87926 * Makefile.in (bitmap.o-warn): Use -Wno-error=array-bounds. Index: Makefile.in === --- Makefile.in (revision

[PR c++/87531] operator= lookup in templates

2018-11-28 Thread Nathan Sidwell
, and I have raised a question with the Core WG. Jason, I decided this approach was cheap enough (and simple) to a rather more involved solution involving marking the template class as having a lazy assign op of some kind, and injecting the using decl at that point. nathan -- Nathan Sidw

[PR preprocessor/90927] Fixe dependency output

2019-06-26 Thread Nathan Sidwell
#x27;Yes, of course they will'. Heck, they do things I can't even imagine! applying to trunk -- Nathan Sidwell 2019-06-26 Nathan Sidwell libcpp/ PR preprocessor/90927 * mkdeps.c (mkdeps::vec::operator[]): Add non-const variant. (deps_add_target): Deal with out of order unquoted t

C++ Modules

2019-07-05 Thread Nathan Sidwell
-modules for details. Testcase g++.dg/modules/iostream-1_{a.H,b.C} is the iostream example, FWIW. nathan -- Nathan Sidwell

[bikeshed] include path search for main file

2019-07-08 Thread Nathan Sidwell
(a) our specs pattern matcher doesn't really work that way, and <, >, " are all shell meta-characters. nathan -- Nathan Sidwell

Re: [bikeshed] include path search for main file

2019-07-08 Thread Nathan Sidwell
On 7/8/19 7:58 AM, Richard Biener wrote: On Mon, Jul 8, 2019 at 1:46 PM Nathan Sidwell wrote: One of the facilities C++ modules provides is turning header files into header units. Thus you can say: import ; (there are some constraints on being able to do that) This involves compiling

[C++] DEFERRED_PARSE

2019-07-08 Thread Nathan Sidwell
-defined template member function. Is my assumption incorrect? (I can of course further reduce the testcase, if needed.) nathan -- Nathan Sidwell

Re: [PATCH] Deprecate -frepo option.

2019-07-09 Thread Nathan Sidwell
tes or just incrementally adds them to new object files). I'm not opposed to removing -frepo from GCC 10 but then I would start noting it is obsolete on the GCC 9 branch at least. I concur. frepo's serial reinvocation of the compiler is not compatible with modern C++ code bases. nathan -- Nathan Sidwell

Re: [PATCH] Deprecate -frepo option.

2019-07-09 Thread Nathan Sidwell
On 7/9/19 9:00 AM, Martin Liška wrote: On 7/9/19 1:41 PM, Nathan Sidwell wrote: On 7/9/19 6:39 AM, Richard Biener wrote: On Mon, Jul 8, 2019 at 2:04 PM Martin Liška wrote: Same happens also for GCC7. It does 17 iteration (#define MAX_ITERATIONS 17) and apparently 17 is not enough to

Re: (C++) Remove -fdeduce-init-list?

2019-07-10 Thread Nathan Sidwell
mpiler? Seeing the -frepo deprecation, any opinions re this? We should remove it (in the usual way of leaving it as an ignored undocumented option) nathan -- Nathan Sidwell

Re: [PATCH] Deprecate -frepo option.

2019-07-10 Thread Nathan Sidwell
On 7/10/19 7:28 AM, Martin Liška wrote: Great, thank you. There's a patch for deprecating of the option in GCC 9 changes. May I install the patch right now or should I wait? I think there needs to be a code patch so that use of the option gives a warning. nathan -- Nathan Sidwell

Re: [PATCH] Deprecate -frepo option.

2019-07-10 Thread Nathan Sidwell
e.g.: $ ./gcc/xgcc -Bgcc -mmpx /tmp/main.c xgcc: warning: switch ‘-mmpx’ is no longer supported Great! I must have missed that patch. All good to go for gcc-9 deprecation nathan -- Nathan Sidwell

Re: [wwwdocs] Introducing C++ DR status table

2019-07-10 Thread Nathan Sidwell
R, reflect that in the table (or let me know and I'll update it for ya). I want to see more green! thanks for putting this together. Is it worth including the NAD entries? Or perhaps not marking them as unknown status? nathan -- Nathan Sidwell

Re: [C++] DEFERRED_PARSE

2019-07-18 Thread Nathan Sidwell
On 7/17/19 8:17 PM, Marek Polacek wrote: On Mon, Jul 08, 2019 at 08:25:25AM -0400, Nathan Sidwell wrote: Jason, Marek, can DEFERRED_PARSE trees survive past the in-class-context late parsing stage? My assumption was not, but in reducing a module testcase I encountered a situation when one

Re: [PATCH] Come up with -flto=auto option.

2019-07-24 Thread Nathan Sidwell
'everything is different' complaints about modules :) FWIW WG21 (C++ std) Study Group 15 is the tooling group, which is where build system people hang out. If anyone's interested in joining email me. nathan -- Nathan Sidwell

[WWW] update CXX-status

2019-02-26 Thread Nathan Sidwell
Gerald, now modules and coroutines are slated to be in C++20, here's a doc patch for them, pointing at their respective wiki pages. ok? nathan -- Nathan Sidwell ? stat.diff Index: htdocs/projects/cxx-status.html === RCS

Re: [wwwdocs] update projects/cxx-status.html

2019-03-01 Thread Nathan Sidwell
On 3/1/19 10:30 AM, Jakub Jelinek wrote: On Tue, Feb 26, 2019 at 02:11:03PM -0500, Nathan Sidwell wrote: now modules and coroutines are slated to be in C++20, here's a doc patch for them, pointing at their respective wiki pages. > Several more papers have been accepted apparently,

Re: [C++ PATCH] PR c++/88123 - lambda and using-directive.

2019-03-08 Thread Nathan Sidwell
call operator. Tested x86_64-pc-linux-gnu, applying to trunk. Nathan, does slipping these bindings into the sk_function_parms binding level this way make sense to you? oo sneaky, I like it. Perhaps a comment explaining the surprising scope these are being pushed into? nathan -- Nathan Sidwell

<    10   11   12   13   14   15   16   17   18   19   >