http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52366

Ben Voigt <richardvoigt at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |richardvoigt at gmail dot
                   |                            |com

--- Comment #4 from Ben Voigt <richardvoigt at gmail dot com> 2012-07-17 
20:32:26 UTC ---
No, this is not a duplicate.

This code involves a *brace-or-equal-initializer*, the code in 52315 does not,
and there are special rules for brace-or-equal-initializers in section 9.2 of
the Standard.  In particular, the class definition is complete inside the
initializer, although it isn't complete inside the array bounds in 52315.

"Within the class member-specification, the class is regarded as complete
within function bodies, default arguments, exception-specifications, and
brace-or-equal-initializers for non-static data members (including such things
in nested classes)."

Since this is a static data member, the exception doesn't apply, and this code
may in fact be invalid, but it isn't the same case as the other defect report.

Reply via email to