From 3ab40fb94ff330507f1d9844b46dd966a163903e Mon Sep 17 00:00:00 2001 From: jason Date: Sun, 25 Sep 2011 02:26:01 +0000 Subject: Handle deferred parsing of NSDMIs. * parser.h (cp_unparsed_functions_entry): Add nsdmis field. * parser.c (unparsed_nsdmis, cp_parser_save_nsdmi): New. (cp_parser_late_parse_one_default_arg): Split out from cp_parser_late_parsing_default_args. (cp_parser_late_parsing_nsdmi): New. (push_unparsed_function_queues): Set it. (cp_parser_parameter_declaration): Save the '=' token. (cp_parser_template_parameter): Likewise. (cp_parser_default_argument): Call cp_parser_initializer rather than cp_parser_initializer_clause. (cp_parser_class_specifier_1): Parse unparsed_nsdmis. (cp_parser_member_declaration): Handle nsdmis. * decl2.c (grokfield): Handle DEFAULT_ARG for a function. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179156 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/cp/parser.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'gcc/cp/parser.h') diff --git a/gcc/cp/parser.h b/gcc/cp/parser.h index 33582fbc0f1..e08c0b415a0 100644 --- a/gcc/cp/parser.h +++ b/gcc/cp/parser.h @@ -169,6 +169,10 @@ typedef struct GTY(()) cp_unparsed_functions_entry_d { /* Functions with defintions that require post-processing. Functions appear in this list in declaration order. */ VEC(tree,gc) *funs_with_definitions; + + /* Non-static data members with initializers that require post-processing. + FIELD_DECLs appear in this list in declaration order. */ + VEC(tree,gc) *nsdmis; } cp_unparsed_functions_entry; DEF_VEC_O(cp_unparsed_functions_entry); -- cgit v1.2.1