Re: [PR c++/84497] ref to undefined tls init

2018-03-05 Thread Nathan Sidwell
On 03/02/2018 01:43 PM, Jason Merrill wrote: On Fri, Mar 2, 2018 at 11:07 AM, Nathan Sidwell wrote: NEEDS_CONSTRUCTING && !HAS_CONSTEXPR_CTOR && !HAS_DEFAULT_CONSTRUCTOR seems like it would be sufficient. and indeed that works in this case. Do you mean !HAS_TRIVIAL_

Re: C++ PATCH for c++/84707, ICE with nested anonymous namespace

2018-03-05 Thread Nathan Sidwell
this function check this, too. Bootstrapped/regtested on x86_64-linux, ok for trunk? OK. 2018-03-05 Marek Polacek PR c++/84707 * decl.c (duplicate_decls): Check DECL_NAME before accessing UDLIT_OPER_P. * g++.dg/cpp0x/inline-ns10.C: New test. -- Nathan Sidwell

[PR c++/84694] ICE on template friend decl

2018-03-05 Thread Nathan Sidwell
s the previous non-crashing behaviour. nathan -- Nathan Sidwell 2018-03-05 Nathan Sidwell PR c++/84694 * friend.c (do_friend): Restore check for identifier_p inside TEMPLATE_ID_EXPR. PR c++/84694 * g++.dg/template/pr84694.C: New. Index: cp/fri

[PR c++/84702] ICE with default tmpl arg of overload set

2018-03-05 Thread Nathan Sidwell
This fixes an ICE where we were not correctly marking a lookup as kept, resulting in an assertion failure later on. nathan -- Nathan Sidwell 2018-03-05 Nathan Sidwell PR c++/84702 * pt.c (process_template_arg): Mark lookup_keep on a default arg. PR c++/84702 * g++.dg/lookup/pr84702.C

Re: [PATCH] Document gcov-io (PR gcov-profile/84735).

2018-03-07 Thread Nathan Sidwell
On 03/07/2018 09:31 AM, Martin Liška wrote: Hi. Attempt of the patch is to explain that consumers of gcov tool should use the intermediate format instead of reading of the profile files. The format change is documented. ok -- Nathan Sidwell

[PR c++/84733] ICE in check-local-shadow

2018-03-09 Thread Nathan Sidwell
for 'e' but find the TYPE_DECL -- somethings getting the ordering wrong. I was unable to find a testcase that triggered the new ice without also triggering the old ice. I'm leaving the bug open, but with a simpler testcase. At least the regression is fixed. nathan -- Nathan Sidwel

[C++/84812] ICE with local fn decl

2018-03-19 Thread Nathan Sidwell
nity to micro-optimize the test to 'TREE_CODE (x) == ERROR_MARK || TTEE_CODE (X) == TREE_LIST'. nathan -- Nathan Sidwell 2018-03-19 Nathan Sidwell PR c++/84812 * name-lookup.c (set_local_extern_decl_linkage): Defend against ambiguous lookups. PR c++/84812 * g++.dg/lookup/pr8

[PR c++/84835] ICE with generic lambda in extern "C"

2018-03-19 Thread Nathan Sidwell
lso not copying the linkage into the template header. Mostly that was ok, because we then ignored it. But sometimes, like this, things went wrong. applying to trunk. nathan -- Nathan Sidwell 2018-03-19 Nathan Sidwell PR c++/84835 * lambda.c (maybe_add_lambda_conv_op): Force C++ l

[PR c++/84962] ICE with anon-struct member

2018-03-20 Thread Nathan Sidwell
n-union 2) we permit things other than non-static-data members Maybe we could deprecate #2 at least? I'm not sure what its use case might be. nathan -- Nathan Sidwell 2018-03-20 Nathan Sidwell PR c++/84962 * name-lookup.c (pushdecl_class_level): Push anon-struct's member_vec, i

deprecate ignored attributes?

2018-03-20 Thread Nathan Sidwell
(cp_parser_allow_gnu_extensions_p (parser) && initialization_kind == CPP_OPEN_PAREN) if (cp_parser_attributes_opt (parser)) warning (OPT_Wattributes, "attributes after parenthesized initializer ignored"); Noisy deprecation warning time? nathan -- Nathan Sidwell

[PR c++/84970] lookup marking

2018-03-20 Thread Nathan Sidwell
nding. When the lookup involved via a using directive we can detect the marking failure. nathan -- Nathan Sidwell 2018-03-20 Nathan Sidwell PR c++/84970 * cp-tree.h (lookup_list_keep): Declare. * tree.c (lookup_list_keep): New, broken out of ... (build_min): ... here. Call it. * d

Deprecate some C++ extensions

2018-03-20 Thread Nathan Sidwell
on into 'Deprecated Features'. Perhaps add a 'Removed Features' section too? Sandra, WDYT? nathan -- Nathan Sidwell 2018-03-20 Nathan Sidwell * doc/extend.texi (Deprecated Features): Update deprecared flags, mention anon-struct/union members and trailing attributes.

[PR c++/84836] ICE with local scopes

2018-03-21 Thread Nathan Sidwell
thusly. nathan -- Nathan Sidwell 2018-03-21 Nathan Sidwell PR c++/84836 * name-lookup.c (update_binding): Correct logic for local binding update. PR c++/84836 * g++.dg/lookup/pr84836.C: New. Index: gcc/cp/name-lookup.c === --- gcc/c

Remove long-dead deprecation documentation

2018-03-21 Thread Nathan Sidwell
Sandra, this removes the now-deleted deprecated features. AFAICT these have been gone for a long time -- 2008 is the most recent changelog entry -- so no need to put it in any release notes. ok? nathan -- Nathan Sidwell 2018-03-21 Nathan Sidwell * doc/extend.texi (Deprecated Features

MAINTAINERS with no port

2018-03-21 Thread Nathan Sidwell
I just had reason to look at the target maintainer list. There seems to be a couple of CPU ports listed in MAINTAINERS that do not exist in the config directory. Ok to remove? (Jeff you're the lucky, 'who do I ask' recipient) nathan -- Nathan Sidwell 2018-03-21

Deprecate not defining NO_IMPLICIT_EXTERN_C

2018-03-21 Thread Nathan Sidwell
the uses from #ifndef NO_IMPLICIT_EXTERN_C into #if !NO_IMPLICIT_EXTERN_C (That's just as vulnerable to misspellings of the name as the ifndef case, and we're converting existing code, so probably quite safe.) My suspicion is that pdp11 and/or vax may care? Comments/Objections? nathan -- Nathan Sidwell

lm32 port?

2018-03-21 Thread Nathan Sidwell
? nathan -- Nathan Sidwell

Re: MAINTAINERS with no port

2018-03-21 Thread Nathan Sidwell
On 03/21/2018 08:02 AM, Richard Biener wrote: On Wed, Mar 21, 2018 at 12:38 PM, Nathan Sidwell wrote: I just had reason to look at the target maintainer list. There seems to be a couple of CPU ports listed in MAINTAINERS that do not exist in the config directory. Ok to remove? (Jeff you&#x

Re: Deprecate not defining NO_IMPLICIT_EXTERN_C

2018-03-21 Thread Nathan Sidwell
On 03/21/2018 10:18 AM, David Edelsohn wrote: AIX still requires implicit extern C. I previously have tried to disable the feature on AIX and it failed miserably. That's unfortunate :( nathan -- Nathan Sidwell

[PR c++/84804] ICE with default arg, template friend & lambda

2018-03-21 Thread Nathan Sidwell
This gets us back to the older behaviour, but at least we push into the instantiation, not the template because of changes I made earlier. nathan -- Nathan Sidwell 2018-03-21 Nathan Sidwell PR c++/84804 * name-lookup.c (do_pushtag): Permit lambdas to be pushed into complete classes.

[PR c++/85008] ICE looking for clone

2018-03-21 Thread Nathan Sidwell
This ICE turned out to be a latent bug exposed by moving the member fns onto the FIELDS list. We should be using DECL_CLONED_FUNCTION_P not DECL_CLONED_FUNCTION. Grepping showed another place (doing a similar linkage check) affected too. nathan -- Nathan Sidwell 2018-03-21 Nathan Sidwell

Re: Deprecate not defining NO_IMPLICIT_EXTERN_C

2018-03-22 Thread Nathan Sidwell
clearly a post-gcc8 thing. nathan -- Nathan Sidwell

Re: [C++ Patch] Fix confusing diagnostics for invalid overrides

2018-03-26 Thread Nathan Sidwell
on. Perhaps reword it to something like "overridden function is %qD" I.e. a more stand-alone message than a continuation of the error. nathan -- Nathan Sidwell

Re: [C++ PATCH] Fix invalid covariant return error-recovery (PR c++/85068)

2018-03-27 Thread Nathan Sidwell
-linux, ok for trunk? 2018-03-27 Jakub Jelinek PR c++/85068 * class.c (update_vtable_entry_for_fn): Don't ICE if base_binfo is NULL. Assert if thunk_binfo is NULL then errorcount is non-zero. ok, thanks. nathan -- Nathan Sidwell

Re: [C++ Patch] Fix confusing diagnostics for invalid overrides

2018-03-27 Thread Nathan Sidwell
On 03/27/2018 03:08 AM, Volker Reichelt wrote: On 03/26/2018 01:19 PM, Nathan Sidwell wrote: On 03/25/2018 10:18 AM, Volker Reichelt wrote: How about the following then? I rephrased the last three errors a little to really make them stand-alone errors. Again, bootstrapped and regtested

Re: [PATCH] [PR c++/85039] no type definitions in builtin offsetof

2018-04-03 Thread Nathan Sidwell
edantic, and it is particularly useful for type punning via an anonymous union. */ || COMPLETE_TYPE_P (b->this_entity But I would think we should reject the definition of d because a is already complete, so it's too late to add members to it. Agreed. -- Nathan Sidwell

[C++ PATCH] empty-declarations

2018-04-10 Thread Nathan Sidwell
after an in-class function definition: class X { void foo () {}; // semi-colon accepted }; And we emitted a fixit for that case. This isn't a regression. I don't think anyone's complained. Jason, WDYT about committing this now? nathan -- Nathan Sidwell 2018-04-10 Natha

Re: [C++ PATCH] empty-declarations

2018-04-10 Thread Nathan Sidwell
On 04/10/2018 12:00 PM, Jason Merrill wrote: On Tue, Apr 10, 2018 at 11:06 AM, Nathan Sidwell wrote: This is the -Wextra-semi warning that Volker added recently, and your patch would break. Do we want -Wextra-semi to now warn about all empty declarations at class/namespace scope, not just

Re: [C++ PATCH] empty-declarations

2018-04-10 Thread Nathan Sidwell
On 04/10/2018 12:43 PM, Jason Merrill wrote: On Tue, Apr 10, 2018 at 12:32 PM, Nathan Sidwell wrote: On 04/10/2018 12:00 PM, Jason Merrill wrote: I don't see why we should warn at all. It's not on by default, but some people want to get a warning about redundant semicolons.

[PR c++/87185] ICE in prune-lambdas

2018-09-05 Thread Nathan Sidwell
I'm applying this patch of Pádraig's. It's a sufficiently obvious NULL-ptr-dereference fix. tested on x86_64-linux. nathan -- Nathan Sidwell 2018-09-05 Pádraig Brady p...@draigbrady.com cp/ PR c++/87185 * lambda.c (prune_lambda_captures): Protect against const_vars.get

[wwwdocs] Document 87137 fix

2018-09-05 Thread Nathan Sidwell
Gerald, this documents the fix for pr87137. Discovered as a GCC-8 regression, turned out to be an ABI bug. Decided to fix the entire bug in one go. Are these changes.html changes ok? Patch discussion at https://gcc.gnu.org/ml/gcc-patches/2018-08/msg01900.html nathan -- Nathan Sidwell Index

[PATCH] internalize a driver fn

2018-09-09 Thread Nathan Sidwell
I discovered pfatal_with_name is only used inside gcc.c. Making it static as obvious. nathan -- Nathan Sidwell 2018-09-09 Nathan Sidwell * gcc.h (pfatal_with_name): Don't declare here. * gcc.c (pfatal_with_name): Make static. Index:

[driver] Use regular error routines

2018-09-11 Thread Nathan Sidwell
er, but I'm not sure what it's trying to say. booted & tested on x86_64-linux, installing as obvious. nathan -- Nathan Sidwell 2018-09-11 Nathan Sidwell * gcc.c (perror_with_name, pfatal_with_name): Delete. (load_specs): Use fatal_error. (DELETE_IF_ORDINARY, process_co

Re: [driver] Use regular error routines

2018-09-11 Thread Nathan Sidwell
the attached after manual testing. nathan -- Nathan Sidwell 2018-09-11 Nathan Sidwell * gcc.c (load_specs, execute, run_attempt): Use %qs not '%s'. Index: gcc.c === --- gcc.c (revision 264216) +++ gcc.c (working cop

Re: [wwwdocs] Document 87137 fix

2018-09-12 Thread Nathan Sidwell
On 9/6/18 12:24 PM, Gerald Pfeifer wrote: Hi Nathan, On Wed, 5 Sep 2018, Nathan Sidwell wrote: this documents the fix for pr87137. Discovered as a GCC-8 regression, turned out to be an ABI bug. Decided to fix the entire bug in one go. Are these changes.html changes ok? thanks for doing this

Re: [C++, wwwdocs] bugs/index.html - complete C++ non-bug entry

2018-09-12 Thread Nathan Sidwell
changes? Hope that helps. nathan -- Nathan Sidwell

Re: [PATCH] Add quotes for -fconstexpr-depth= in an error message.

2018-09-12 Thread Nathan Sidwell
On 9/12/18 6:17 AM, Martin Liška wrote: PING^1 gcc/cp/ChangeLog: 2018-08-28 Martin Liska * constexpr.c (cxx_eval_call_expression): Add quotes to -fconstexpr-depth=. ok, thanks -- Nathan Sidwell

[PR debug/87295] ICE in dwarf2out

2018-09-13 Thread Nathan Sidwell
The incoming die is DW_TAG_structure_type with comdat_type_p set. We create a new_die_raw, which has NULL die_id.die_symbol and then never set that field (or another piece of the die_id union). How is this supposed to work? nathan -- Nathan Sidwell

[PATCH c++/pr87295] -fdebug-types-section ICE

2018-09-17 Thread Nathan Sidwell
0227731e in main (argc=8, argv=0x7fffe668) at ../../../src/gcc/main.c:39 (gdb) -- Nathan Sidwell 2018-09-17 Nathan Sidwell PR c++/87295 * dwarf2out.c (clone_as_declaration): Copy die_id and set comdat_type_p as appropriate. Index: dwarf2out.c

[PATCH c++/86881] -Wshadow-local-compatible ICE

2018-09-18 Thread Nathan Sidwell
o a compatible type. But that's not a new problem. Applying to trunk and gcc-8 nathan -- Nathan Sidwell 2018-09-18 Nathan Sidwell PR c++/86881 cp/ * name-lookup.c (check_local_shadow): Ignore auto types. testsuite/ * g++.dg/warn/pr86881.C: New. Index:

Re: [C++ Patch] PR 85070 ("[8/9 Regression] ICE on C++ code: in lazily_declare_fn, at cp/method.c:2409")

2018-09-24 Thread Nathan Sidwell
x86_64-linux. ok -- Nathan Sidwell

[libiberty] Use pipe inside pex_run

2018-10-01 Thread Nathan Sidwell
ed-bootstrap build, and I've tested on AIX (where vfork is fork) as well asx86_64-linux. nathan -- Nathan Sidwell 2018-10-01 Nathan Sidwell * configure.ac (checkfuncs): Add pipe2. * config.in, configure: Rebuilt. * pex-unix.c (pex_unix_exec_child): Comminicate errors from child

Re: [PATCH c++/pr87295] -fdebug-types-section ICE

2018-10-02 Thread Nathan Sidwell
Ping? On 9/17/18 7:30 AM, Nathan Sidwell wrote: Richard, this patch makes the ICE go away, but I really don't know if it's correct.  When cloning the type die I copy die_id, so it is found during the (currently ICEing) hash lookup.  In this particular testcase we clone the die tw

Re: C++ PATCH to implement C++20 P0892R2 - explicit(bool)

2018-10-03 Thread Nathan Sidwell
nt we're doing the simple thing of growing lang_decl_fn. It seems the better approach is a flag in the function_decl (or it's decl_lang_specific extension) to say 'go look over there', and a hash table you know will contain something. nathan -- Nathan Sidwell

Re: C++ PATCH to implement C++20 P0892R2 - explicit(bool)

2018-10-03 Thread Nathan Sidwell
ecl look if the fn decl is associated with any explicit-specifier, if it is, substitute it, and set DECL_NONCONVERTING_P accordingly. Sounds right, maybe with the flag idea I mentioned in the other email to say it's worth looking in the hash table. Hashing can be by tree address of course. natha -- Nathan Sidwell

[C++ PATCH] String concatenation is a thing

2018-10-04 Thread Nathan Sidwell
We've had string literal concatenation since we dropped K&R build support. Let's use it to make things more readable. Applying to trunk. nathan -- Nathan Sidwell 2018-10-04 Nathan Sidwell * lang-specs.h: Use string contatenation, not line splicing. Index

[PATCH] A couple of line map fixes

2018-10-11 Thread Nathan Sidwell
okens locations. It seems we don't always use all those locations, and so can have trailing garbage. booted & tested on x86_64-linux. Fixing thusly. nathan -- Nathan Sidwell 2018-10-11 Nathan Sidwell * include/line-map.h (LINEMAPS_MACRO_LOWEST_LOCATION): Fix off-by-

Re: [PATCH] [PR c++/85437] accept static_casted ptrmem in constexpr

2018-04-20 Thread Nathan Sidwell
s only zero for conversions through the primary base (or suitably placed empty base). CONVERT_EXPR would seem more natural there? nathan -- Nathan Sidwell

Re: [PATCH] [PR c++/85437] accept static_casted ptrmem in constexpr

2018-04-20 Thread Nathan Sidwell
vel without turning the optimizer on. IMHO we only need to check this is happening at some point when the optimizer is turned on. (The original bug was wrong code, but then perhaps it should be a runtime check?) WDYT? nathan -- Nathan Sidwell 2018-04-20 Nathan Sidwell PR c++/85437 PR

Re: [PATCH] [PR c++/85437] accept static_casted ptrmem in constexpr

2018-04-24 Thread Nathan Sidwell
On 04/23/2018 01:19 PM, Jason Merrill wrote: On Fri, Apr 20, 2018, 12:52 PM Nathan Sidwell I have to change convert_ptrmem to always expand the constant (into an OFFSET_TYPE) so that initializer_constant_valid_p (used by reduced_constant_expression_p) doesn't get confused

Re: [PATCH] [PR c++/85437] accept static_casted ptrmem in constexpr

2018-04-24 Thread Nathan Sidwell
Now with added patchy goodness. On 04/24/2018 12:31 PM, Nathan Sidwell wrote: On 04/23/2018 01:19 PM, Jason Merrill wrote: On Fri, Apr 20, 2018, 12:52 PM Nathan Sidwell     I have to change convert_ptrmem to always     expand the constant (into an OFFSET_TYPE) so that

Re: [PATCH] Don't offer suggestions for compiler-generated variables (PR c++/85515)

2018-04-25 Thread Nathan Sidwell
at the end, so the user cannot name them. We could move the space to the beginning, if that helps? $21 = $23 = These two could also have the space treatment. $22 = This is a perfectly serviceable user available function, just as any member operator function. nathan -- Nathan Sidwell

dumpfile cleanup

2018-04-26 Thread Nathan Sidwell
ng whether to fclose. It seems more straight forwards to just compare to stdin & stdout themselves. This patch does that cleanup, and the next patch will add the '-' functionality. I've been using this on the modules branch for some time now. ok for trunk? nathan -- Na

[patch] allow '-' for stdout dump

2018-04-26 Thread Nathan Sidwell
Here's the patch to allow '-' as a synonym for 'stdout'. It's easier to type, and a convention used elsewhere. Also document the existing stdout/stderr selection along with the new behaviour? ok for trunk? nathan -- Nathan Sidwell 2018-04-26 Nathan Sidwe

[C++ PATCH] some cleanups

2018-04-27 Thread Nathan Sidwell
ade a template (now?) internal creator function extern committing to trunk. nathan -- Nathan Sidwell 2018-04-27 Nathan Sidwell * cp-tree.h (TEMPLATE_INFO): Fix comments. (TI_PENDING_TEMPLATE_FLAG): Check TEMPLATE_INFO. (NON_DEFAULT_TEMPLATE_ARG_COUNT): Wrap line. (dump, print_other_binding_s

Re: [patch] allow '-' for stdout dump

2018-04-27 Thread Nathan Sidwell
s. I tried rationalizing the developer options into different subsections, but that quickly turned into a rat hole. Here I've just pulled out the filename creation to an earlier paragraph. WDYT? nathan -- Nathan Sidwell 2018-04-27 Nathan Sidwell * dumpfile.c (dump_open): Allow 

[C++ PATCH] cleanup 2

2018-04-27 Thread Nathan Sidwell
When working on the recent ptrmem static_cast bug, I noticed convert_ptrmem could do with a bit of modernization. Thusly moved its local var decls to their assignments. nathan -- Nathan Sidwell 2018-04-27 Nathan Sidwell * typeck.c (convert_ptrmem): Move local var decls to initialization

Re: [patch] allow '-' for stdout dump

2018-04-30 Thread Nathan Sidwell
On 04/28/2018 11:33 AM, Sandra Loosemore wrote: On 04/27/2018 07:12 AM, Nathan Sidwell wrote: Hmmm, I'd like to wordsmith this a bit and clean up the markup, etc. How about this? looks good, this is what I'm committing, thanks! nathan -- Nathan Sidwell 2018-04-30 Nath

Re: [PATCH] Add fix-it hint for missing return statement in assignment operators (PR c++/85523)

2018-05-01 Thread Nathan Sidwell
ype's a base of the current object. *) convert_to_base would also allow dropping the REFERENCE_TYPE check here, so icky code returning by-value could also be caught. Up to you. But otherwise ok. nathan -- Nathan Sidwell

[C++ Patch] Kill -ffriend-injection

2018-05-03 Thread Nathan Sidwell
As prophesied in GCC 8.1, it's time to kill friend injection. Committing to trunk. nathan -- Nathan Sidwell 2018-05-03 Nathan Sidwell * doc/extend.texi (Deprecated Features): Remove -ffriend-injection. (Backwards Compatibility): Likewise. * doc/invoke.texi (C++ Language Op

[C++ PATCH] Kill -fno-for-scope

2018-05-07 Thread Nathan Sidwell
As prophesied by gcc 8.1, I have nuked the ARM-era for-scope compatibilty of -fno-for-scope. It has been a c++98-only feature, and that's not the default anymore. Time for this to go. nathan -- Nathan Sidwell 2018-05-07 Nathan Sidwell gcc/cp/ Remove fno-for-scope * cp-t

Re: [Patch / RFC] Rename POINTER_TYPE_P to INDIRECT_TYPE_P ?

2018-05-14 Thread Nathan Sidwell
<-> REFERENCE_TYPE conversions are useless, so the distinction is lost during optimizations really soon. The middle ends don't know that in C++ REFERENCE_TYPE is never a null pointer (IIUC). It might be nice if they knew that. nathan -- Nathan Sidwell

Re: Aliasing 'this' in a C++ constructor

2018-05-18 Thread Nathan Sidwell
think the following bizarre code is nevertheless well-formed: struct selfie { selfie *me; selfie (selfie *ptr) : me (ptr) {} }; selfie bob (&bob); nathan -- Nathan Sidwell

Re: [PATCH] Print working directory to gcov files (PR gcov-profile/84846).

2018-05-18 Thread Nathan Sidwell
On 05/18/2018 08:42 AM, Martin Liška wrote: V2: pwd is renamed to cwd, which is a better name. Martin ok thanks. nathan -- Nathan Sidwell

Re: [PATCH] gcov: add new option -t that prints output to stdout (PR gcov-profile/84846).

2018-05-18 Thread Nathan Sidwell
a FILE* to the outputting routines? That would be nicer, but if not practical, this is ok. nathan -- Nathan Sidwell

Re: Aliasing 'this' in a C++ constructor

2018-05-18 Thread Nathan Sidwell
risons to this? I thought restrict implied such a comparison was 'never the same'? ie. if the ctor was: selfie (selfie *ptr) : me (ptr==this ? 0 : ptr) {} nathan -- Nathan Sidwell

Re: Aliasing 'this' in a C++ constructor

2018-05-18 Thread Nathan Sidwell
to that effect. Ok then, thanks for the explanations. nathan -- Nathan Sidwell

Re: Aliasing 'this' in a C++ constructor

2018-05-18 Thread Nathan Sidwell
ly or indirectly, from the constructor’s this pointer, the value of the object or subobject thus obtained is unspecified." nathan -- Nathan Sidwell

Re: [C++ PATCH] Pedwarn on a non-standard position of a C++ attribute.

2018-05-24 Thread Nathan Sidwell
(cp_parser_namespace_definition): Pedwarn about attributes after the namespace name. testsuite/ Pedwarn on a non-standard position of a C++ attribute. * g++.dg/cpp1z/namespace-attribs2.C: New. ok, thanks nathan -- Nathan Sidwell

gcov rearrangement

2014-08-06 Thread Nathan Sidwell
2014-08-06 Nathan Sidwell * Makefile.in (LIBGCOV_INTERFACE): Move _gcov_dump ... (LIBGCOV_DRIVER): ... to here. * libgcov.h (gcov_do_dump): New #define. (struct gcov_root): New. (__gcov_root): New declaration. (__gcov_dump_one): De

Re: RFC: PATCH to allow passing non-trivial types through ...

2014-08-11 Thread Nathan Sidwell
by invisible reference. So this patch implements that. Since it's been so long since this was allowed at all, I don't think we need to worry about ABI incompatibility with the 3.1 behavior. Thoughts? Sounds sensible to me. nathan -- Nathan Sidwell

fix gfcov regression

2014-08-23 Thread Nathan Sidwell
his patch is sufficiently safe, please apply. nathan 2014-08-22 Nathan sidwell * libgcov-interface.c (STRONG_ALIAS): New. (__gcov_flush): Call __gcov_reset_int. (__gcov_reset): Strong alias for ... (__gcov_reset_ing): ... this renamed hidden version. * lib

Re: [patch] fix VXWORKSAE_TARGET_DIR not to designate a hardcoded /home subdir

2014-09-01 Thread Nathan Sidwell
On 09/01/14 08:34, Olivier Hainque wrote: We have been using a variant of this for years in our gcc 4.7 based compiler series, checked that the patch works fine with gcc-4.9 and that it applies as-is on the current mainline. OK to commit ? Yes, thanks -- Nathan Sidwell

Re: fix gfcov regression

2014-09-02 Thread Nathan Sidwell
On 08/23/14 10:33, Nathan Sidwell wrote: Hi, this patch fixes a defect Jan found with firefox and its shared objects. We were inadvertently calling an externally visible and overridable symbol, rather than the local shared object's instance. This led to strangely sparse gcov results.

Re: fix gfcov regression

2014-09-03 Thread Nathan Sidwell
On 09/03/14 04:06, Dominique Dhumieres wrote: I've committed the patch now. It (r214840) breaks bootstrap on darwin: does this fix it? nathan 2014-09-03 Nathan sidwell * libgcov-interface.c (STRONG_ALIAS): Rename to ... (ALIAS): ... here. Make weak. Adjust uses.

Re: fix gfcov regression

2014-09-07 Thread Nathan Sidwell
attached patch. If someone wants to invest time using an alias on targets that support it, that'd be great! nathan 2014-09-05 Nathan sidwell * libgcov-interface.c (STRONG_ALIAS): Rename to ... (ALIAS_weak): ... here. Use forwarding function. Adjust uses. Index: libgcc

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

2014-10-09 Thread Nathan Sidwell
hort_p)) + return typeid (__complex) != typeid (__complex double); Don't we want this to be '=='? I think it wants to check for _complex being __complex double, not not being _complex int (other failure modes exist!) nathan -- Nathan Sidwell

fix class enum lookup

2015-05-19 Thread Nathan Sidwell
I've committed this obvious patch for 65954. We failed to issue a diagnostic for a failed class enum lookup, and returned NULL, rather than error_mark_node, leading to a seg fault. booted & tested on x86_64-linux. nathan 2015-05-19 Nathan sidwell cp/ PR c++/65954 *

[C++ PATCH] Fix return deduction and ref-quals

2015-05-21 Thread Nathan Sidwell
I've committed this obvious patch to fix PR 60943. When deducing an auto return type we failed to propagate any reference qualification on the function type. built & tested on x86_64-linux. nathan 2015-05-21 Nathan Sidwell cp/ PR c++/60943 * decl2.c (change_return_type):

[C++ PATCH] fix canonical type ICE

2015-05-21 Thread Nathan Sidwell
_EQUALITY_P is false, we have a problem. We blow up in comptypes verifying the canonical type machinery. This patch applies the may_alias attribute to the instantiated decl. built & tested on x86_64-linux, ok? nathan 2015-05-21 Nathan Sidwell cp/ PR c++/65936 pt.c (lookup_template_class

Re: [C++ PATCH] fix canonical type ICE

2015-05-22 Thread Nathan Sidwell
may_alias and abi_tag. booted and tested on x86_64-linux ok? nathan 2015-05-22 Nathan Sidwell PR c++/65936 * pt.c (lookup_template_class_1): Copy may_alias attribute too. PR c++/65936 * g++.dg/template/pr65936.C: New. Index: cp/pt.c

[C++ Patch] Fix 66243, silent cast of scoped enum

2015-05-24 Thread Nathan Sidwell
This is a pretty obvious patch. We were permitting a scoped enum initializer of an another enum to silently decay to int. That's not right, only unscoped enums have that privilege. committed. nathan 2015-05-24 Nathan Sidwell cp/ PR c++/66243 * decl.c (build_enumerator):

Re: [C++ Patch] Fix 66243, silent cast of scoped enum

2015-05-25 Thread Nathan Sidwell
On 05/25/15 15:43, Jason Merrill wrote: On 05/24/2015 07:20 PM, Nathan Sidwell wrote: - else if (! INTEGRAL_OR_ENUMERATION_TYPE_P (TREE_TYPE (value))) + else if (! INTEGRAL_OR_UNSCOPED_ENUMERATION_TYPE_P + (TREE_TYPE (value))) value

[C++/66270] another may_alias crash

2015-05-25 Thread Nathan Sidwell
INTER_TYPE case there. bootstrapped on x86-linux & tested, ok? nathan 2015-05-25 Nathan Sidwell PR c++/66270 * tree.c (build_pointer_type_for_mode): Pass can_alias_all to canonical type builder. (build_reference_type_for_mode): Likewise. cp/ * typeck.c (structural_comptypes) [PO

Re: [C++/66270] another may_alias crash

2015-05-26 Thread Nathan Sidwell
On 05/25/15 21:18, Jason Merrill wrote: On 05/25/2015 04:55 PM, Nathan Sidwell wrote: else if (TYPE_CANONICAL (to_type) != to_type) TYPE_CANONICAL (t) = build_reference_type_for_mode (TYPE_CANONICAL (to_type), mode, false); But we're passing '

Re: [C++/66270] another may_alias crash

2015-05-27 Thread Nathan Sidwell
On 05/26/15 15:00, Nathan Sidwell wrote: On 05/25/15 21:18, Jason Merrill wrote: Hmm, are you seeing a case where TYPE_CANONICAL (to_type) has the may_alias attribute? Yes. This occurs when the newly created TRCAA pointer is to a self-canonical type. The else if (TYPE_CANONICAL (to_type

Re: [C++/66270] another may_alias crash

2015-05-27 Thread Nathan Sidwell
On 05/27/15 12:20, Jason Merrill wrote: On 05/26/2015 03:00 PM, Nathan Sidwell wrote: Ok, so IIUC a canonical pointer to a may_alias type should have TRCAA but a canonical can_alias_all pointer to a non-may_alias type should not have TRCAA? (i.e. one where CAN_ALIAS_ALL was passed true). Or are

[C++/52595] template in NSDMI initializer

2015-05-27 Thread Nathan Sidwell
declarator token. Otherwise we presume the ',' is part of a template-id. booted and tested on x86_64-linux, ok? nathan 2015-05-27 Nathan Sidwell cp/ PR c++.52595 * parser.c (cp_parser_cache_defarg): Continue looking for declarators when scanning a potential template ar

Re: [C++/52595] template in NSDMI initializer

2015-06-04 Thread Nathan Sidwell
ping? or do you want to leave this dormant until 325 is resolved (which doesn't seem to be any time soon ...) https://gcc.gnu.org/ml/gcc-patches/2015-05/msg02892.html On 05/27/15 16:05, Nathan Sidwell wrote: this patch fixes 52595, which I'd not noticed was actually suspended. an

[C++/58583] ICE instantiating NSDMIs

2015-06-06 Thread Nathan Sidwell
against it, because this really is an instantiation problem not a parsing problem. built & tested on x86_64-linux, ok? nathan 2015-06-05 Nathan Sidwell cp/ PR c++/58583 * init.c (get_nsdmi): Check for DEFAULT_ARG in template case and protect it from recursive instantiation. testsuite/

Re: The nvptx port

2014-11-17 Thread Nathan Sidwell
On 11/14/14 11:04, Jeff Law wrote: On 11/14/14 05:36, Jakub Jelinek wrote: So, for a warp, if some threads perform one branch of an if and other threads another one, all threads perform the first one first (with some maybe not doing anything), then all the threads the others (again, other threa

Re: The nvptx port

2014-11-17 Thread Nathan Sidwell
On 11/14/14 10:43, Jeff Law wrote: On 11/14/14 04:09, Bernd Schmidt wrote: Hi Jakub, I have some questions about nvptx: 1) you've said that alloca isn't supported, but it seems Yes, it's unimplemented. There's an internal declaration for it but that seems to be as far as it goes, and that d

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

2015-06-08 Thread Nathan Sidwell
On 06/08/15 13:47, Jason Merrill wrote: How about using a DECL_LANG_FLAG instead of creating a garbage DEFAULT_ARG? good idea, I'll go look for an available one. nathan

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

2015-06-09 Thread Nathan Sidwell
why I didn't notice that in the test results. I've double checked this time, and all looks good. built & tested on x86_64-linux-gnu nathan 2015-06-09 Nathan Sidwell cp/ PR c++/58583 * cp-tree.h (DECL_INSTANTIATING_NSDMI_P): New. * init.c (get_nsdmi): Check for DEFAULT_ARG i

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

2015-06-14 Thread Nathan Sidwell
Ping? https://gcc.gnu.org/ml/gcc-patches/2015-06/msg00674.html #On 06/09/15 09:46, Nathan Sidwell wrote: On 06/08/15 13:47, Jason Merrill wrote: How about using a DECL_LANG_FLAG instead of creating a garbage DEFAULT_ARG? This patch uses DECL_LANG_FLAG_2 on the FIELD_DECL to mark that its

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

2015-06-16 Thread Nathan Sidwell
On 06/16/15 03:47, Andreas Schwab wrote: Nathan Sidwell writes: PR c++/58583 * g++.dg/cpp0x/nsdmi-template14.C: New test. spawn -ignore SIGHUP /usr/local/gcc/gcc-20150616/Build/gcc/testsuite/g++2/../../xg++ -B/usr/local/gcc/gcc-20150616/Build/gcc/testsuite/g++2

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

2015-06-17 Thread Nathan Sidwell
On 06/17/15 04:57, James Greenhalgh wrote: I'm seeing the same issues on aarch64-none-elf and aarch64_be-none-elf in one of my testing environments, but, interestingly, not on aarch64-none-linux-gnu or in my other aarch64-none-elf testing environment (!!). ugh. What is the behavior on the tes

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

2015-06-21 Thread Nathan Sidwell
On 06/20/15 02:09, Andreas Schwab wrote: This also fails on powerpc. what is the build compiler? James provided a clue that 4.9.2 is ok but 4.8.1 is bad. nathan

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

2015-06-21 Thread Nathan Sidwell
On 06/21/15 19:00, Nathan Sidwell wrote: On 06/20/15 02:09, Andreas Schwab wrote: This also fails on powerpc. what is the build compiler? James provided a clue that 4.9.2 is ok but 4.8.1 is bad. FWIW, I can't reproduce the failure with using a stock 4.8.2 build compiler for an x

Re: [gomp4] Preserve NVPTX "reconvergence" points

2015-06-22 Thread Nathan Sidwell
openmp's needs to preserve parallelism on a parallel loop? Is it more than the reconvergence issue? nathan -- Nathan Sidwell

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