template<class T> void foo(T) { } // 2 int main() { foo(0r); // 6 }
Gives: fixed.cpp: In function 'void foo(T) [with T = <unnamed-fixed:16>]': fixed.cpp:6: instantiated from here fixed.cpp:2: internal compiler error: in classify_argument, at config/i386/i386.c:5123 Chris -- Summary: ICE passing fixed floating point to function template Product: gcc Version: 4.4.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: cfairles at gcc dot gnu dot org GCC build triplet: x86_64-redhat-linux GCC host triplet: x86_64-redhat-linux GCC target triplet: x86_64-redhat-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38617