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

            Bug ID: 59465
           Summary: g++ allows direct-initialization of an array of class
                    type from another array in a mem-initializer
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: richard-gccbugzilla at metafoo dot co.uk

Reduced testcase:

  struct string {} a[1];
  struct pair {
    string s[1]; pair() : s(a) {}
  };

This is ill-formed, but g++ accepts it. The initialization is rejected if we
try to direct-initialize a non-member array this way, or if 'string' is
replaced by a non-class type, so I assume this is a bug rather than a
deliberate extension.

Reply via email to