This is the mail archive of the gcc-cvs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

r113081 - in /trunk/gcc: cp/ChangeLog cp/class....


Author: mmitchel
Date: Wed Apr 19 16:58:23 2006
New Revision: 113081

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=113081
Log:
	PR c++/27102
	* class.c (currently_open_class): Tidy.
	* decl.c (grokdeclarator): If we encounter an erroneous
	declarator, assume that we have already issued an error message
	and return.  Return error_mark_node instead of NULL_TREE in more
	places.  Issue errors about function definitions that do not have
	a function declarator.  Check for complete types for all function
	definitions. 
	* cp-tree.h (cp_error_declarator): Remove.
	(currently_open_class): Change return type.
	* parser.c (cp_parser_id_expression): Add optional_p parameter.
	(cp_parser_parse_diagnose_invalid_type_name): Adjust calls.
	(cp_parser_id_expression): Likewise.
	(cp_parser_unqualified_id): If the name is optional, return
	NULL_TREE.
	(cp_parser_postfix_dot_deref_expression): Adjust calls.
	(cp_parser_type_parameter): Likewise.
	(cp_parser_unqualified_id): Likewise.
	(cp_parser_direct_declarator): Likewise.
	(cp_parser_declarator_id): Add optional_p parameter.
	(cp_parser_function_definition_from_specifiers_and_declarator):
	Assume that start_function indicates failure only if it has issued
	an error.
	(cp_parser_omp_var_list_no_open): Adjust calls.
	
	PR c++/27102
	* g++.dg/template/crash35.C: Tweak error markers.
	* g++.dg/template/crash46.C: New test.
	* g++.old-deja/g++.brendan/friend4.C: Tweak error markers.
	* g++.old-deja/g++.pt/incomplete1.C: Likewise.

Added:
    trunk/gcc/testsuite/g++.dg/template/crash46.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/class.c
    trunk/gcc/cp/cp-tree.h
    trunk/gcc/cp/decl.c
    trunk/gcc/cp/parser.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/g++.dg/template/crash35.C
    trunk/gcc/testsuite/g++.old-deja/g++.brendan/friend4.C
    trunk/gcc/testsuite/g++.old-deja/g++.pt/incomplete1.C


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]