https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80415

            Bug ID: 80415
           Summary: [7 Regression]  bogus "invalid initialization of
                    reference" error
           Product: gcc
           Version: 7.0.1
            Status: UNCONFIRMED
          Keywords: rejects-valid
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: trippels at gcc dot gnu.org
  Target Milestone: ---

LLVM trunk doesn't build anymore with gcc-7:

 % cat Arg.ii
struct A {
  A(int, int, const int (&)[0] = {});
};
A fn1() { return {0, 0}; }


 % g++ -c Arg.ii
Arg.ii: In function ‘A fn1()’:
Arg.ii:4:23: error: invalid initialization of reference of type ‘const int
(&)[0]’ from expression of type ‘const int [0]’
 A fn1() { return {0, 0}; }
                       ^
Arg.ii:2:3: note: in passing argument 3 of ‘A::A(int, int, const int (&)[0])’
   A(int, int, const int (&)[0] = {});
   ^

Reply via email to