Hi, Issue here is that the argument type gets NULL for function-call of cp_parser_functional_cast. This invalid type is the result of cp_parser_simple_type_specifier call.
2014-02-20 Kai Tietz <kti...@redhat.com> PR c++/58873 * parser.c (cp_parser_functional_cast): Treat NULL_TREE valued type argument as error_mark_node. Regression tested for x86_64-unknown-linux-gnu, and i686-w64-mingw32. Ok for apply? Regards, Kai Index: parser.c =================================================================== --- parser.c (Revision 207953) +++ parser.c (Arbeitskopie) @@ -23165,6 +23165,9 @@ cp_parser_functional_cast (cp_parser* parser, tree tree cast; bool nonconst_p; + if (!type) + type = error_mark_node; + if (cp_lexer_next_token_is (parser->lexer, CPP_OPEN_BRACE)) { maybe_warn_cpp0x (CPP0X_INITIALIZER_LISTS);