http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55535
--- Comment #1 from Niels Penneman <niels at penneman dot org> 2012-11-29 21:07:07 UTC --- Wrong copy/paste for output. Below is the correct compiler output. $ g++ -fsyntax-only -Wall -Wextra voodoo.cxx voodoo.cxx: In function ‘void func()’: voodoo.cxx:10:20: error: size of array has non-integral type ‘Empty’ (Voodoo()[Empty()]); ^ voodoo.cxx:10:20: error: ‘type name’ declared as function returning an array voodoo.cxx:10:20: error: size of array has non-integral type ‘Empty’ voodoo.cxx:10:20: error: ‘type name’ declared as function returning an array