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

--- Comment #22 from Jonathan Wakely <redi at gcc dot gnu.org> ---
The added diagnostic rejects this, which clang and EDG accept:

extern "C" int printf(const char*, ...);
int main() { 
  using A = int[1];
  printf("%p\n", A{1} );
}

ts.c:4:18: error: taking address of temporary array
   printf("%p\n", A{1} );
                  ^~~~


This doesn't use compound literals, and seems like valid C++ according to
[conv.array].

Reply via email to