[Bug c++/38232] [4.4 Regression] "value-initialization of reference" warning too strict

2008-11-23 Thread crowl at google dot com
--- Comment #3 from crowl at google dot com 2008-11-23 23:50 --- The relevant change in DR 178 is To value-initialize an object of type T means: * if T is a class type (clause 9 [class]) with a user-declared constructor (12.1 [class.ctor]), then the default

[Bug c++/41038] [4.4/4.5 regression] Parsing error related to qualified name id

2009-08-12 Thread crowl at google dot com
--- Comment #2 from crowl at google dot com 2009-08-12 18:42 --- It looks like the compiler is not properly handling injected class names. The original example was not the best use of the injected class name, but should be accepted. Jonathan's example is better code, and still

[Bug c++/29365] Unnecessary anonymous namespace warnings

2007-04-03 Thread crowl at google dot com
--- Comment #11 from crowl at google dot com 2007-04-04 00:30 --- (In reply to comment #5) > Yes, sorry, I should have said if foo::bar is used in multiple TUs, rather > than > foo itself. If foo::bar is defined in only one TU, and is used as an opaque > type in other TUs,

[Bug c++/27177] [4.1/4.2/4.3 Regression] ICE in build_simple_base_path, at cp/class.c:474

2008-01-21 Thread crowl at google dot com
--- Comment #20 from crowl at google dot com 2008-01-21 20:49 --- Subject: Re: [4.1/4.2/4.3 Regression] ICE in build_simple_base_path, at cp/class.c:474 On 21 Jan 2008 02:00:07 -, mmitchel at gcc dot gnu dot org <[EMAIL PROTECTED]> wrote: > > > --- Comment #19 f

[Bug c++/57620] New: Phantom terminator confuses raw string literal parsing.

2013-06-14 Thread crowl at google dot com
Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: crowl at google dot com The first example of C++11 section 2.14.5 paragraph 5 confuses the scanner. $ cat test.cc const char *phantom_terminator = R"a( )\ a" )a"; $ xg++ -std=

[Bug c++/53524] [4.7/4.8 Regression] Bogus and unsupressable enum comparison warning

2012-05-29 Thread crowl at google dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53524 Lawrence Crowl changed: What|Removed |Added CC||crowl at google dot com --- Comment #3

[Bug c++/53524] [4.7/4.8 Regression] Bogus and unsuppressible enum comparison warning

2012-05-30 Thread crowl at google dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53524 --- Comment #10 from Lawrence Crowl 2012-05-30 17:37:37 UTC --- (In reply to comment #6) > The warnings are an unintended effect of my fix for PR16603. > > We warn at the end of the below lines of call.c. At the moment isn't clear to > me *when*

[Bug c++/53524] [4.7/4.8 Regression] Bogus and unsuppressible enum comparison warning

2012-05-30 Thread crowl at google dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53524 --- Comment #11 from Lawrence Crowl 2012-05-30 17:42:14 UTC --- (In reply to comment #7) > Let's add in CC Gaby, in the testsuite I see the warning triggering outside > templates for a testcase coming from a bug report of him, > g++.old-deja/g++.

[Bug c++/53524] [4.7/4.8 Regression] Bogus and unsuppressible enum comparison warning

2012-05-31 Thread crowl at google dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53524 --- Comment #15 from Lawrence Crowl 2012-05-31 17:18:49 UTC --- > When we emit the warning, arg2_type and arg3_type are the types > of arg2 and arg3, thus, post PR16603, exactly the types of the > two initializing expressions, because we are stil

[Bug c++/53524] [4.7/4.8 Regression] Bogus and unsuppressible enum comparison warning

2012-05-31 Thread crowl at google dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53524 --- Comment #17 from Lawrence Crowl 2012-05-31 21:08:51 UTC --- > In any case I recommend not mixing together here different issues: > the first one, subject of this report, is overeager warning in open > enum context with conditional operators (

[Bug c++/27177] [4.0/4.1/4.2/4.3 Regression] ICE in build_simple_base_path, at cp/class.c:474

2007-05-01 Thread crowl at google dot com
--- Comment #12 from crowl at google dot com 2007-05-02 02:24 --- (In reply to comment #10) > I am not convinced that the code in Comment #8 is valid. > > Although the operand of sizeof is not in fact evaluated, it seems odd to > permit an operand which cannot, even in p

[Bug c++/33916] Default constructor fails to initialize array members

2007-10-31 Thread crowl at google dot com
--- Comment #1 from crowl at google dot com 2007-10-31 20:08 --- The wording in the C++ standard working paper is as follows: 8.5 Initializers [dcl.init] -8- An object whose initializer is an empty set of parentheses, i.e., (), shall be value-initialized. Therefore, in <<&

[Bug c++/34094] [4.2/4.3 Regression] Undefined static data member in anonymous namespace can acquire a definition anyway

2007-12-18 Thread crowl at google dot com
--- Comment #12 from crowl at google dot com 2007-12-18 23:46 --- I think the last fix is incomplete: namespace { struct simple { static const int size = 4; }; template< typename T > struct generic { static const int size = 4; }; } struct instantiate {

[Bug c++/33916] [4.2/4.3 Regression] Default constructor fails to initialize array members

2008-01-07 Thread crowl at google dot com
--- Comment #5 from crowl at google dot com 2008-01-07 18:58 --- Subject: Re: [4.2/4.3 Regression] Default constructor fails to initialize array members Value initialization was in C++98 TC1 (2003) as a result of core issue 178. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id

[Bug c++/27177] [4.1/4.2/4.3 Regression] ICE in build_simple_base_path, at cp/class.c:474

2008-01-14 Thread crowl at google dot com
--- Comment #17 from crowl at google dot com 2008-01-14 21:29 --- Subject: Re: [4.1/4.2/4.3 Regression] ICE in build_simple_base_path, at cp/class.c:474 The consensus of the C++ standards reflector is that all three following code snippets are well-formed. explicit: struct B