The file below gives "internal compiler error: in cp_parser_template_id, at cp/parser.c:8564". It's a Delta-reduced version of a preprocessed version of the Boost file remote_call_manager.cpp, but missing some header files.
class remote_call_manager: private noncopyable { template<class R> static R execute_now(function<R> &rFunctor); inline void remote_call_manager::execute_now<void>(function<void> &rFunctor) This sounds like bug 9781, among others, but that's supposedly fixed. Here's the session: 312> /opt/gcc401chk/bin/g++ -v ../cpp/bugfiles/GCC_bugfiles/error/ 105390_remote_call_manager_min.ii Using built-in specs. Target: i686-pc-linux-gnu Configured with: ../configure --enable-checking --prefix=/opt/gcc401chk --enable-languages=c,c+ + Thread model: posix gcc version 4.0.1 /opt/gcc401chk/libexec/gcc/i686-pc-linux-gnu/4.0.1/cc1plus -fpreprocessed ../cpp/bugfiles/ GCC_bugfiles/error/105390_remote_call_manager_min.ii -quiet -dumpbase 105390_remote_call_manager_min.ii -mtune=pentiumpro -auxbase 105390_remote_call_manager_min -version -o /tmp/ccsSRpV5.s GNU C++ version 4.0.1 (i686-pc-linux-gnu) compiled by GNU C version 3.3.4 (pre 3.3.5 20040809). GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 ../cpp/bugfiles/GCC_bugfiles/error/105390_remote_call_manager_min.ii:2: error: expected class-name before { token ../cpp/bugfiles/GCC_bugfiles/error/105390_remote_call_manager_min.ii:4: error: function was not declared in this scope ../cpp/bugfiles/GCC_bugfiles/error/105390_remote_call_manager_min.ii:4: error: expected primary- expression before > token ../cpp/bugfiles/GCC_bugfiles/error/105390_remote_call_manager_min.ii:4: error: rFunctor was not declared in this scope ../cpp/bugfiles/GCC_bugfiles/error/105390_remote_call_manager_min.ii:4: error: template declaration of R remote_call_manager::execute_now ../cpp/bugfiles/GCC_bugfiles/error/105390_remote_call_manager_min.ii:5: internal compiler error: in cp_parser_template_id, at cp/parser.c:8564 -- Summary: ICE in cp_parser_template_id, at cp/parser.c:8564 with Boost remote_call_manager Product: gcc Version: 4.0.1 Status: UNCONFIRMED Severity: minor Priority: P2 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: flash at pobox dot com CC: gcc-bugs at gcc dot gnu dot org GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23307