http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50726
Bug #: 50726 Summary: Internal compiler error when specializing template with an Enum Class Classification: Unclassified Product: gcc Version: 4.5.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: coyotte...@hotmail.com Created attachment 25495 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=25495 The .ii version of the code in the bug report gcc version: gcc (Ubuntu/Linaro 4.5.2-8ubuntu4) 4.5.2 Compile line: gcc -std="c++0x" test.cpp -save-temps test.cpp:11:16: internal compiler error: in constructor_name_p, at cp/name-lookup.c:1809 Please submit a full bug report, with preprocessed source if appropriate. See <file:///usr/share/doc/gcc-4.5/README.Bugs> for instructions. The .ii file is attached, but here is the source code: enum class Foo { Val1, Val2 }; template <Foo val> void do_something() { } template <Foo::Val1> //Error at this line void do_something() { } int main() { return 0; } Possibly a duplicate of this bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47627, but the code is still different.