diff options
author | Jason Merrill <jason@redhat.com> | 2011-09-24 22:26:01 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2011-09-24 22:26:01 -0400 |
commit | eb02633818a908b78e8fc0939be2e4774ed840c6 (patch) | |
tree | 4ed25f3377c184a6d3a1db8397675121388b3ccc /gcc/cp/parser.h | |
parent | 0e5f8a598de1c8dc44fb59c6d0ea0dcd557f695a (diff) | |
download | gcc-eb02633818a908b78e8fc0939be2e4774ed840c6.zip gcc-eb02633818a908b78e8fc0939be2e4774ed840c6.tar.gz gcc-eb02633818a908b78e8fc0939be2e4774ed840c6.tar.bz2 |
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.
From-SVN: r179156
Diffstat (limited to 'gcc/cp/parser.h')
-rw-r--r-- | gcc/cp/parser.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/cp/parser.h b/gcc/cp/parser.h index 33582fb..e08c0b4 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); |