Commit Graph

40780 Commits

Author SHA1 Message Date
Andreas Jaeger
47ab0cbb90 * unwind-dw2-fde.h (last_fde): Add unused attribute for obj.
From-SVN: r60640
2002-12-30 19:22:36 +01:00
David Edelsohn
c73aecdfc0 parser.c (cp_parser_parameter_declaration_clause): Treat system header as extern "C" if NO_IMPLICIT_EXTERN_C undefined.
* parser.c (cp_parser_parameter_declaration_clause): Treat system
        header as extern "C" if NO_IMPLICIT_EXTERN_C undefined.

From-SVN: r60639
2002-12-30 13:21:49 -05:00
Nathanael Nerode
b599b13591 config-lang.in, [...]: GCC, not GNU CC.
* config-lang.in, Make-lang.in, operators.def, cp-tree.def:
	GCC, not GNU CC.

From-SVN: r60638
2002-12-30 18:06:39 +00:00
Mark Mitchell
946d5e4529 decl.c (grokdeclarator): Diagnost "extern thread" and "static thread" correctly.
* decl.c (grokdeclarator): Diagnost "extern thread" and "static
	thread" correctly.

From-SVN: r60637
2002-12-30 17:47:15 +00:00
Nathanael Nerode
1c3139456d decl.c, [...]: GCC, not GNU CC.
* decl.c, decl2.c, decl.h:  GCC, not GNU CC.  This is the C++ front
	end, not the C front end.

From-SVN: r60636
2002-12-30 16:25:45 +00:00
Nathan Sidwell
8e268f721e add missing Changelogs
From-SVN: r60635
2002-12-30 16:21:40 +00:00
Kazu Hirata
3cc3e1cd36 * config/h8300/h8300.md (*addsi3_lshiftrt_16_zexthi): New.
From-SVN: r60633
2002-12-30 15:35:20 +00:00
Kazu Hirata
a6e8d1139d h8300.c (output_logical_op): Use extu.w if we are clearing the most significant byte.
* config/h8300/h8300.c (output_logical_op): Use extu.w if we
	are clearing the most significant byte.
	(compute_logical_op_length): Update to reflect the change in
	output_logical_op.
	(compute_logical_op_cc): Likewise.

From-SVN: r60632
2002-12-30 15:28:31 +00:00
Nathan Sidwell
07fa487859 cp-tree.h (THUNK_TARGET): New macro.
cp:
	* cp-tree.h (THUNK_TARGET): New macro.
	(THUNK_VIRTUAL_OFFSET): For result thunks it is always a binfo.
	(finish_thunk): Remove offset parms.
	* class.c (find_final_overrider): Look through thunks.
	(get_vcall_index): Use THUNK_TARGET.
	(update_vtable_entry_for_fn): Look through thunks. Set covariant
	fixed offset here. Adjust finish_thunk call.
	(build_vtbl_initializer): Adjust finish_thunk calls.
	* mangle.c (mangle_call_offset): Remove superfluous if.
	(mangle_thunk): Adjust.
	* method.c (make_thunk): Adjust.
	(finish_thunk): Adjust.
	(thunk_adjust): Remove assert.
	(use_thunk): Use THUNK_TARGET
	* dump1.c (cp_dump_tree): Adjust thunk dumping.
testsuite:
	* g++.dg/inherit/covariant5.C: New test.
	* g++.dg/inherit/covariant6.C: New test.
	* g++.dg/inherit/covariant7.C: New test.

From-SVN: r60628
2002-12-30 13:39:48 +00:00
Nathan Sidwell
5a5cccaa4e re PR c++/9054 (segfault on legal code with option -fdump-translation-unit)
PR c++/9054
	* class.c (layout_class_type): Set DECL_CONTEXT of type for base.
	* dump.c (cp_dump_tree, RECORD_TYPE): Deal with type for base types.

From-SVN: r60627
2002-12-30 12:46:13 +00:00
GCC Administrator
8b5d67e116 Daily bump.
From-SVN: r60626
2002-12-30 08:17:30 +00:00
Kazu Hirata
c85263d297 h8300.md: Give internal names to anonymous insns.
* config/h8300/h8300.md: Give internal names to anonymous
	insns.

From-SVN: r60613
2002-12-29 22:25:39 +00:00
Kazu Hirata
fbcb02cd36 * config/h8300/h8300.md: Reorder some insns.
From-SVN: r60611
2002-12-29 21:33:18 +00:00
Gabriel Dos Reis
b626ec1b39 New test.
From-SVN: r60610
2002-12-29 21:28:25 +00:00
Gabriel Dos Reis
17db6bcc29 new test.
From-SVN: r60609
2002-12-29 21:13:10 +00:00
Kriang Lerdsuwanakij
f2551f3571 re PR c++/2739 (g++ allows accessing private members)
PR c++/2739
	* g++.dg/other/access2.C: New test.

From-SVN: r60605
2002-12-29 17:01:45 +00:00
Gabriel Dos Reis
348d992107 New test.
From-SVN: r60604
2002-12-29 16:42:30 +00:00
Gabriel Dos Reis
5f77bfb5c7 new test.
From-SVN: r60603
2002-12-29 16:12:43 +00:00
Gabriel Dos Reis
53101fd1dd anon-struct.C: No longer fails
* g++.dg/other/anon-struct.C: No longer fails
	* g++.old-deja/g++.brendan/parse4.C: Likewise.
	* g++.old-deja/g++.brendan/parse5.C: Likewise.
	* g++.old-deja/g++.brendan/parse6.C: Likewise.

From-SVN: r60602
2002-12-29 15:13:12 +00:00
Gabriel Dos Reis
848eed9249 Remove traditional C constructs 4/n.
* decl2.c (grok_method_quals, warn_if_unknown_interface,
	grok_x_components, cp_build_parm_decl, build_artificial_parm,
	maybe_retrofit_in_chrg, grokclassfn, grok_array_decl,
	delete_sanity, check_member_template, check_java_method,
	check_classfn, finish_static_data_member_decl, grokfield,
	grokbitfield, grokoptypename, grok_function_init,
	cplus_decl_attributes, constructor_name, defer_fn,
	build_anon_union_vars, finish_anon_union, coerce_new_type,
	coerce_delete_type, comdat_linkage, maybe_make_one_only,
	key_method, import_export_vtable, import_export_class,
	output_vtable_inherit, import_export_decl, import_export_tinfo,
	build_cleanup, get_guard, get_guard_bits, get_guard_cond,
	set_guard, start_objects, finish_objects,
	start_static_storage_duration_function,
	finish_static_storage_duration_function, get_priority_info,
	start_static_initialization_or_destruction,
	finish_static_initialization_or_destruction,
	do_static_initialization, do_static_destruction,
	prune_vars_needing_no_initialization, write_out_vars,
	reparse_decl_as_expr, finish_decl_parsing, namespace_ancestor,
	add_using_namespace, merge_functions, ambiguous_decl,
	lookup_using_namespace, lookup_using_namespace,
	qualified_lookup_using_namespace, set_decl_namespace,
	decl_namespace, current_decl_namespace, push_decl_namespace,
	pop_decl_namespace, push_scope, pop_scope, add_function,
	arg_assoc_namespace, arg_assoc_template_arg, arg_assoc,
	lookup_arg_dependent, do_namespace_alias,
	validate_nonmember_using_decl, do_nonmember_using_decl,
	do_toplevel_using_decl, do_local_using_decl,
	do_class_using_decl, do_using_directive, check_default_args,
	mark_used, handle_class_head): Use C90 prototypings.  Use booleans.
	* parser.c (cp_parser_class_head): Use booleanss.
	* decl.c (walk_globals, walk_vtables): Likewise.
	* cp-tree.h (walk_globals_pred, walk_globals_fn, walk_vtables,
	walk_globals): Change return type from 'int' to 'bool'.
	* rtti.c (init_rtti_processing, build_headof, throw_bad_cast
	throw_bad_typeid, get_tinfo_decl_dynamic, typeid_ok_p,
	build_typeid, tinfo_name, get_tinfo_decl, get_tinfo_ptr,
	get_typeid, ifnonnull, build_dynamic_cast_1, build_dynamic_cast,
	qualifier_flags, tinfo_base_init, generic_initializer,
	ptr_initializer, dfs_class_hint_mark, ptm_initializer,
	dfs_class_hint_unmark, class_hint_flags, class_initializer,
	typeinfo_in_lib_p, get_pseudo_ti_init, create_pseudo_type_info,
	get_pseudo_ti_desc, create_tinfo_types, emit_support_tinfos,
	unemitted_tinfo_decl_p, emit_tinfo_decl): Likewise.
	* repo.c (repo_compile_flags, repo_template_declared,
	repo_template_defined, repo_class_defined, repo_get_id,
	repo_template_used, repo_vtable_used, repo_inline_used,
	repo_tinfo_used, repo_template_instantiated, extract_string,
	open_repo_file, afgets, init_repo, reopen_repo_file_for_write,
	finish_repo): Likewise.
	* ptree.c (cxx_print_decl, cxx_print_type, cxx_print_identifier,
	cxx_print_xnode): Likewise..
	* cp-lang.c (ok_to_generate_alias_set_for_type, cxx_get_alias_set,
	cxx_warn_unused_global_decl, cp_expr_size): Likewise.
	* cxxfilt.c (demangle_it, print_demangler_list, usage,
	standard_symbol_characters, hp_symbol_characters, main, fatal):
	Likewise.
	(strip_underscore):  Change type from 'int' to 'bool'.
	(main): Use boolean constants.

From-SVN: r60601
2002-12-29 14:53:05 +00:00
Kazu Hirata
2873836bd9 h8300-protos.h: Add prototypes for const_int_qi_operand and const_int_hi_operand.
* config/h8300/h8300-protos.h: Add prototypes for
	const_int_qi_operand and const_int_hi_operand.
	* config/h8300/h8300.c (const_int_qi_operand): New.
	(const_int_hi_operand): Likewise.
	* config/h8300/h8300.md (three peepholes): New.

From-SVN: r60600
2002-12-29 14:36:35 +00:00
GCC Administrator
b63d28bf68 Daily bump.
From-SVN: r60597
2002-12-29 08:18:43 +00:00
Jason Merrill
65e7caddc9 change error to warning
From-SVN: r60590
2002-12-29 01:03:42 -05:00
Joseph Myers
bdefb2ab19 cpp.texi, [...]: Use @copying.
gcc:
	* doc/cpp.texi, doc/gcc.texi, doc/gccint.texi, doc/install.texi:
	Use @copying.

gcc/ada:
	* gnat_rm.texi, gnat_ug.texi: Use @copying.
	* gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
	gnat_ug_wnt.texi: Regenerate.

gcc/f:
	* g77.texi: Use @copying.

gcc/java:
	* gcj.texi: Use @copying.

gcc/treelang:
	* treelang.texi: Use @copying.

libstdc++-v3:
	* docs/html/17_intro/porting.texi: Use @copying.
	* docs/html/17_intro/porting.html: Regenerate.

From-SVN: r60587
2002-12-28 21:38:55 +00:00
Joseph Myers
a38f87a9d2 configure.in: Increase makeinfo version requirement to 4.[2-9].
* configure.in: Increase makeinfo version requirement to 4.[2-9].
	* configure: Regenerate.
	* doc/install.texi: Update Texinfo version requirement.

From-SVN: r60583
2002-12-28 20:51:36 +00:00
Gabriel Dos Reis
b746c5dc67 Remove traditional C constructs 3/n.
* cvt.c (cp_convert_to_pointer, convert_to_pointer_force,
	build_up_reference, warn_ref_binding, convert_to_reference,
	convert_from_reference, convert_lvalue, cp_convert, ocp_convert,
	convert_to_void, convert, convert_force, build_type_conversion,
	build_expr_type_conversion, type_promotes_to,
	perform_qualification_conversions): Use C90 prototyping style.
	* decl2.c (grok_array_decl): Use boolean constant.
	(delete_sanity): Likewise.
	* typeck.c (build_unary_op): Likewise.
	* semantics.c (finish_switch_cond): Likewise.
	* parser.c (cp_parser_direct_new_declarator): Likewise.
	* init.c (build_new): Likewise.

From-SVN: r60574
2002-12-28 14:38:38 +00:00
Andreas Jaeger
b9b21a05ce i386.c (x86_function_profiler): Mark labelno as possibly unused.
* config/i386/i386.c (x86_function_profiler): Mark labelno as
	possibly unused.

From-SVN: r60573
2002-12-28 14:57:59 +01:00
Gabriel Dos Reis
c7ab2b4dbc * g++.dg/parse/angle-bracket.C (main): No longer fails.
From-SVN: r60572
2002-12-28 13:48:54 +00:00
Andreas Jaeger
c14bc6db67 c-parse.in (yyprint): Use HOST_WIDE_INT_PRINT_DOUBLE_HEX for correct format.
* c-parse.in (yyprint): Use HOST_WIDE_INT_PRINT_DOUBLE_HEX for
	correct format.

From-SVN: r60570
2002-12-28 11:51:18 +01:00
GCC Administrator
1dd0faf394 Daily bump.
From-SVN: r60567
2002-12-28 08:17:42 +00:00
Mark Mitchell
a723baf1eb Make-lang.in (po-generated): Remove parse.c.
* Make-lang.in (po-generated): Remove parse.c.
	(CXX_OBJS): Remove parse.o and spew.o.  Add parser.o.
	($(srcdir)/cp/parse.h): Remove target.
	($(srcdir)/cp/parse.c): Likewise.
	(gt-cp-parse.h): Likewise.
	(gt-cp-parser.h): New target.
	(c++.distclean): Do not remove parse.output.
	(c++.maintainer-clean): Do not remove parse.c or parse.h.
	(cp/spew.o): Remove target.
	(cp/lex.o): Adjust dependencies.
	(cp/pt.o): Likewise.
	(cp/parse.o): Likewise.
	(cp/TAGS): Do not mention parse.c.
	(cp/parser.o): New target.
	* NEWS: Mention the new parser.
	* call.c (build_scoped_method_call): Simplify.
	(build_method_call): Likewise.
	(build_new_function_call): Adjust calls to add_function_candidate
	and add_template_candidate.
	(build_new_op): Improve handling of erroroneous operands.
	(convert_default_arg): Remove circular argument processing.
	(name_as_c_string): New function.
	(build_new_method_call): Use it.
	(perform_implicit_conversion): Use error_operand_p.
	* class.c (finish_struct_anon): Use constructor_name_p.
	(check_field_decls): Likewise.
	(pop_nested_class): Use OVL_NEXT, not OVL_CHAIN.
	(resolve_address_of_overloaded_function): Likewise.
	(instantiate_type): Tweak pointer-to-member handling.
	(get_primary_binfo): Remove incorrect assertion.
	* config-lang.in (gtfiles): Add parser.c, remove parse.c.
	* cp-tree.h (DEFARG_TOKENS): New macro.
	(default_arg): New structure.
	(cp_tree_node_structure_enum): Add TS_CP_DEFAULT_ARG.
	(lang_tree_node): Add default_arg.
	(cp_tree_index): Add CPTI_TYPE_INFO_REF_TYPE.
	(type_info_ref_type): New macro.
	(saved_scope): Make processing_explicit_instantiation a boolean.
	(check_access): New field.
	(unparsed_text): Remove.
	(language_function): Remove unparsed_inlines.
	(error_operand_p): New macro.
	(lang_decl): Adjust pending_inline_info.
	(DEFARG_POINTER): Remove.
	(tag_types): Add typenames.
	(lookup_ualified_name): Declare.
	(lookup_name_real): Likewise.
	(shadow_tag): Adjust prototype.
	(get_scope_of_declarator): Declare it.
	(process_next_inline): Remove it.
	(check_for_missing_semicolon): Likewise.
	(maybe_get_template_decl_from_type_decl): Declare it.
	(finish_label_stmt): Adjust prototype.
	(finish_non_static_data_meber): Declare it.
	(finish_pseudo_destructor_call_expr): Rename to ...
	(finish_pseudo_destructor_expr): ... this.
	(finish_compound_literal): Declare it.
	(begin_inline_definitions): Remove it.
	(init_spew): Remove.
	(peekyylex): Likewise.
	(arbitrate_lookup): Likewise.
	(frob_opname): Likewise.
	(maybe_snarf_defarg): Likewise.
	(add_defarg_fn): Likewise.
	(do_pending_defargs): Likewise.
	(done_pending_defargs): Likewise.
	(unprocessed_defarg_fn): Likewise.
	(replace_defarg): Likewise.
	(end_input): Likewise.
	(get_overloaded_fn): Likewise.
	* cvt.c (convert_to_reference): Improve error handling.
	* decl.c (lookup_name_real): Do not declare it static.
	(maybe_push_to_top_level): Set check_access.
	(identifier_type_value): Adjust call to lookup_name_real.
	(lookup_qualified_name): New method.
	(lookup_name_real): Remove special-case parsing code.
	(lookup_name-nonclass): Adjust call to lookup_name_real.
	(lookup_name_namespace_only): Likewise.
	(lookup_name): Likewise.
	(check_tag_decl): Return the type declared.
	(shadow_tag): Likewise.
	(register_dtor_fn): Tweak check_access.
	(grokfndecl): Use constructor_name_p.
	(get_scope_of_declarator): New function.
	(grokdeclarator): Obscure tweaks for slightly different declarator
	representations.
	(start_method): Return error_mark_node to indicate failure.
	(cp_tree_node_structure_enum): Use TS_CP_DEFAULT_ARG for DEFAULT_ARGs.
	* decl2.c (constructor_name_full): Simplify.
	(constructor_name): Use it.
	(build_expr_from_tree): Adjust for changes to do new parser.
	(push_scope): Improve robustness.
	(validate_nonmember_using_decl): Process declarations, not names.
	(do_class_using_decl): Likewise.
	(handle_class_head): Do not mess with CLASSTYPE_DECLARED_CLASS
	here.
	* error.c (dump_expr): Handle IDENTIFIER_NODEs and BASELINKs.
	* expr.c (cxx_expand_expr): Handle BASELINKs.
	* init.c (member_init_ok_or_else): Issue more errors.
	(build_offset_ref): Tweak handling of FUNCTION_DECLs.
	* lex.c: Do not include parse.h.
	(yypring): Do not declare.
	(yylval): Likewise.
	(make_reference_declarator): Remove error-generating code.
	(rid_to_yy): Remove.
	(cxx_init): Do not call init_spew.
	(yypring): Remove.
	(check_for_missing_semicolon): Remove.
	* lex.h (got_scope): Remove.
	(got_object): Remove.
	* method.c (hack_identifier): Use finish_non_static_data_member.
	(implicitly_declare_fn): Adjust use of constructor_name.
	* parser.c: New file.
	* pt.c (parse.h): Do not include it.
	(maybe_get_template_decl_from_template): Do not declare it.
	(finish_member_template_decl): Tweak.
	(begin_explicit_instantiation): Adjust for
	processing_explicit_instantiation being boolean.
	(end_explicit_instantiation): Likewise.
	(maybe_process_partial_specialization): Tighten specialization
	test.
	(retrieve_local_specialization): Adjust ue of hash table.
	(eq_local_specializations): New function.
	(register_local_specialization): Likewise.
	(push_template_decl_real): Remove unnecessary test.
	(maybe_get_template_decl_from_type_decl): Don't make it static.
	(for_each_template_parm_r): Handle TYPEOF_TYPE.
	(tsubst_copy): Use retrieive_local_specialization to handle
	PARM_DECL.  Adjust handling of CONST_DECLs.  Handle BASELINKs.
	Handle COMPONENT_REFs with pseudo-destructor-expressions.
	Simplify handling of CALL_EXPR and METHOD_CALL_EXPR.
	(tsubst_expr): Pass decls, not names, to do_local_using_decl.
	(unify): Tweak handling of CONST_DECLs.
	(regenerate_decl_from_template): Use push_nested_class.
	(template_for_substitution): New funciton.
	(instantiate_decl): Use it.  Register parameters as local
	specializations.
	* rtti.c (init_rtti_processing): Set type_info_ref_type.
	(build_typeid): Use it.
	(get_typeid): Likeise.
	* search.c (accessible_p): Use check_access, not
	flag_access_control.
	(adjust_result_of_qualified_name_lookup): Pay attention to the
	context_class.
	* semantics.c (finish_asm_stmt): Adjust error handling.
	(finish_label_stmt): Return the statement.
	(finish_non_static_data_member): New function.
	(finish_class_expr): Handle BASELINKs.
	(finish_call_expr): Handle PSEUDO_DTOR_EXPR.
	(finish_object_call_expr): Simplify handling during templates.
	(finish_pseudo_destructor_call_expr): Rename to ...
	(finish_pseudo_dtor_expr): ... this.
	(finish_compound_literal): New function.
	(begin_inline_definitions): Remove.
	(finish_sizeof): Remove special template handling.
	* spew.c: Do not include parse.h.
	* tree.c (get_overloaded_fn): Remove.
	* typeck.c (build_class_member_access_expr): Handle
	PSEUDO_DTOR_EXPR.  Adjust handling of static member functions.
	(lookup_destructor): New function.
	(finish_class_member_access_expr): Use it.
	(convert_arguments): Simplify.
	(build_unary_op): Handle BASELINKs.

From-SVN: r60560
2002-12-28 08:03:42 +00:00
Mark Mitchell
876200a8b7 spec4.C: Remove stray semicolon.
* g++.dg/eh/spec4.C: Remove stray semicolon.
	* g++.dg/expr/pmf-1.C: Change error message.
	* g++.dg/ext/asm1.C: Remove stray semicolon.
	* g++.dg/ext/typename1.C: Add missing typenames.
	* g++.dg/inherit/template-as-base.C: Change error message.
	* g++.dg/lookup/scoped1.C: Likewise.
	* g++.dg/lookup/scoped2.C: Likewise.
	* g++.dg/lookup/using2.C: Likewise.
	* g++.dg/other/component1.C: Remove stray semicolon.
	* g++.dg/other/do1.C: Change error message.
	* g++.dg/other/error2.C: Likewise.
	* g++.dg/other/init1.C: Likewise.
	* g++.dg/other/packed1.C: Remove stray semicolon.
	* g++.dg/other/ptrmem2.C: Change error message.
	* g++.dg/parse/parameter-declaration-1.C: Remove line number
	marker.
	* g++.dg/special/initp1.C: Remove invalid attribute usage.
	* g++.dg/template/access3.C: Add typename keyword.
	* g++.dg/template/access5.C: Remove stray semicolon.
	* g++.dg/template/access6.C: Likewise.
	* g++.dg/template/complit1.C: Likewise.
	* g++.dg/template/crash1.C: Change error message.
	* g++.dg/template/inherit2.C: Remove stray semicolon.
	* g++.dg/template/instantiate2.C: Likewise.
	* g++.dg/template/instantiate3.C: Change error message.
	* g++.dg/template/qual1.C: Remove stray semicolon.
	* g++.dg/template/qualttp18.C: Change error message.
	* g++.dg/template/ref1.C: Remove stray semicolon.
	* g++.dg/template/sizeof1.C (A::value): Declare it.
	* g++.dg/template/spec4.C: Change error message.
	* g++.dg/template/static1.C: Likewise.
	* g++.dg/template/type1.C: Likewise.
	* g++.dg/template/typename3.C: Likewise.
	* g++.old-deja/g++.benjamin/13478.C: Change error message.
	* g++.old-deja/g++.benjamin/15799.C: Remove stray semicolon.
	* g++.old-deja/g++.benjamin/bool01.C: Likewise.
	* g++.old-deja/g++.benjamin/bool02.C: Likewise.
	* g++.old-deja/g++.benjamin/p13417.C: Now fails due to use of
	named return value extension.
	* g++.old-deja/g++.benjamin/tem06.C: Remove stray semicolon.
	* g++.old-deja/g++.benjmain/warn01.C: Likewise.
	* g++.old-deja/g++.bob/extern_C.C: Likewise.
	* g++.old-deja/g++.bob/inherit2.C: Likewise.
	* g++.old-deja/g++.brendan/complex1.C: Likewise.
	* g++.old-deja/g++.brendan/copy5.C: Likewise.
	* g++.old-deja/g++.brendan/crash13.C: Likewise.
	* g++.old-deja/g++.brendan/crash15.C: Likewise.
	* g++.old-deja/g++.brendan/crash18.C: Change error message.
	* g++.old-deja/g++.brendan/crash37.C: Remove stray semicolon.
	* g++.old-deja/g++.brendan/crash38.C: Likewise.
	* g++.old-deja/g++.brendan/crash50.C: Likewise.
	* g++.old-deja/g++.brendan/crash56.C: Likewise.
	* g++.old-deja/g++.brendan/crash6.C: Use explicit specialization
	syntax.
	* g++.old-deja/g++.brendan/crash66.C: Remove stray semicolon.
	* g++.old-deja/g++.brendan/crash8.C: Change error message.
	* g++.old-deja/g++.brendan/ctors1.C: Remove stray semicolon.
	* g++.old-deja/g++.brendan/ctors2.C: Likewise.
	* g++.old-deja/g++.brendan/shadow1.C: Likewise.
	* g++.old-deja/g++.brendan/template11.C: Likewise.
	* g++.old-deja/g++.brendan/template26.C: Likewise.
	* g++.old-deja/g++.brendan/template27.C: Use explicit
	specialization syntax.
	* g++.old-deja/g++.brendan/template30.C: Likewise.
	* g++.old-deja/g++.brendan/template5.C: Remove stray semicolon.
	* g++.old-deja/g++.brendan/visibility3.C: Account for use of
	non-dependent names.
	* g++.old-deja/g++.brendan/warnings4.C: Remove stray semicolon.
	* g++.old-deja/g++.brendan/warnings7.C: Likewise.
	* g++.old-deja/g++.bugs/900121_02.C: Likewise.
	* g++.old-deja/g++.eh/catchptr1.C: Likewise.
	* g++.old-deja/g++.ext/addrfunc4.C: Likewise.
	* g++.old-deja/g++.ext/namedret1.C: Now fails due to use of
	named return value extension.
	* g++.old-deja/g++.ext/namedret2.C: Likewise.
	* g++.old-deja/g++.ext/namedret3.C: Likewise.
	* g++.old-deja/g++.ext/return1.C: Likewise.
	* g++.old-deja/g++.ext/typename1.C: Add missing typename keywords.
	* g++.old-deja/g++.jason/access17.C: Issue more error messages.
	* g++.old-deja/g++.jason/access8.C: Likewise.
	* g++.old-deja/g++.jason/bool.C: Remove stray semicolon.
	* g++.old-deja/g++.jason/destruct.C: Remove incorrect
	pseudo-destructor names.
	* g++.old-deja/g++.jason/dtor3.C: Remove stray semicolon.
	* g++.old-deja/g++.jason/dtor5.C: Remove incorrect
	pseudo-destructor names.
	* g++.old-deja/g++.jason/opeq3.C: Remove stray semicolon.
	* g++.old-deja/g++.jason/overload19.C: Likewise.
	* g++.old-deja/g++.jason/overload32.C: Likewise.
	* g++.old-deja/g++.jason/parse11.C: Issue error messages about
	stray semicolons.
	* g++.old-deja/g++.jason/pmem2.C: Remove stray semicolon.
	* g++.old-deja/g++.jason/return.C: Likewise.
	* g++.old-deja/g++.jason/return2.C: Likewise.
	* g++.old-deja/g++.jason/shadow1.C: Likewise.
	* g++.old-deja/g++.jason/special.C: Use explicit specialization
	syntax.
	* g++.old-deja/g++.jason/template10.C: Account for use of
	non-dependent names.
	* g++.old-deja/g++.jason/template11.C: Use explicit specialization
	syntax.
	* g++.old-deja/g++.jason/template37.C: Likewise.
	* g++.old-deja/g++.law/access4.C: Change error messages.
	* g++.old-deja/g++.law/arm13.C:  Remove incorrect
	pseudo-destructor names.
	* g++.old-deja/g++.law/code-gen5.C: Remove stray semicolon.
	* g++.old-deja/g++.law/ctors9.C: Likewise.
	* g++.old-deja/g++.law/cvt22.C: Likewise.
	* g++.old-deja/g++.law/dtors5.C: Likewise.
	* g++.old-deja/g++.law/global-init1.C: Likewise.
	* g++.old-deja/g++.law/missed-error3.C: Likewise.
	* g++.old-deja/g++.law/operators28.C: Likewise.
	* g++.old-deja/g++.law/visibility28.C: Likewise.
	* g++.old-deja/g++.martin/eval1.C: Likewise.
	* g++.old-deja/g++.martin/pmf2.C: Remove qualifier in constructor
	name.
	* g++.old-deja/g++.mike/hog1.C: Remove stray semicolon.
	* g++.old-deja/g++.mike/net34.C: Likewise.
	* g++.old-deja/g++.mike/net36.C: Likewise.
	* g++.old-deja/g++.mike/ns2.C: Likewise.
	* g++.old-deja/g++.mike/p12306.C: Likewise.
	* g++.old-deja/g++.mike/p646.C: Adjust for removal of named return
	value extension.
	* g++.old-deja/g++.mike/p700.C: Likewise.
	* g++.old-deja/g++.mike/p701.C: Remove stray semicolon.
	* g++.old-deja/g++.mike/p710.C: Likewise.
	* g++.old-deja/g++.mike/p784.C: Adjust for removal of named return
	value extension.
	* g++.old-deja/g++.mike/pmf7.C: Remove stray semicolon.
	* g++.old-deja/g++.mike/pmf9.C: Likewise.
	* g++.old-deja/g++.ns/crash2.C: Likewise.
	* g++.old-deja/g++.ns/crash3.C: Likewise.
	* g++.old-deja/g++.ns/invalid1.C: Likewise.
	* g++.old-deja/g++.ns/ns17.C: Likewise.
	* g++.old-deja/g++.ns/template16.C: Likewise.
	* g++.old-deja/g++.ns/template5.C: Remove invalid use of template
	keyword.
	* g++.old-deja/g++.ns/template6.C: Remove stray semicolon.
	* g++.old-deja/g++.ns/using9.C: Remove stray semicolon.
	* g++.old-deja/g++.oliva/nameret1.C: Now fails due to use of
	named return value extension.
	* g++.old-deja/g++.oliva/nameret2.C: Likewise.
	* g++.old-deja/g++.other/access4.C: Issue additional error
	messages.
	* g++.old-deja/g++.other/array6.C: Remove stray semicolon.
	* g++.old-deja/g++.other/crash1.C: Isue additional error messages.
	* g++.old-deja/g++.other/crash11.C: Add missing class-key.
	* g++.old-deja/g++.other/crash25.C: Change error message.
	* g++.old-deja/g++.other/crash4.C: Change error message.
	* g++.old-deja/g++.other/debug7.C: Remove stray semicolon.
	* g++.old-deja/g++.other/decl5.C: Issue more error messages.
	* g++.old-deja/g++.other/defarg7.C: Remove circular dependency
	checks.
	* g++.old-deja/g++.other/defarg8.C: Likewise.
	* g++.old-deja/g++.other/dtor1.C: Remove stray semicolon.
	* g++.old-deja/g++.other/dtor10.C: Likewise.
	* g++.old-deja/g++.other/incomplete.C: Likewise.
	* g++.old-deja/g++.other/linkage7.C: Likewise.
	* g++.old-deja/g++.other/lookup19.C: Now fails due to corrected
	lookup algorithm.
	* g++.old-deja/g++.other/mangle2.C: Likewise.
	* g++.old-deja/g++.other/refinit2.C: Likewise.
	* g++.old-deja/g++.other/sizeof2.C: Change error messages.
	* g++.old-deja/g++.other/std1.C: Remove stray semicolon.
	* g++.old-deja/g++.pt/crash28.C: Likewise.
	* g++.old-deja/g++.pt/crash29.C: Use explicit specialization
	syntax.
	* g++.old-deja/g++.pt/crash32.C: Change error message.
	* g++.old-deja/g++.pt/crash43.C: Adjust error messages.
	* g++.old-deja/g++.pt/crash58.C: Remove stray semicolon.
	* g++.old-deja/g++.pt/crash65.C: Tweak to acount for change in
	error message position.
	* g++.old-deja/g++.pt/defarg5.C: Remove stray semicolon.
	* g++.old-deja/g++.pt/defarg8.C: Change error message.
	* g++.old-deja/g++.pt/eichin01.C: Use explicit specialization
	syntax.
	* g++.old-deja/g++.pt/eichin01a.C: Define static data members.
	* g++.old-deja/g++.pt/eichin01b.C: Likewise.
	* g++.old-deja/g++.pt/enum7.C: Remove stray semicolon.
	* g++.old-deja/g++.pt/explicit12.C: Remove invalid use of template
	keyword.
	* g++.old-deja/g++.pt/explicit31.C: Likewise.
	* g++.old-deja/g++.pt/explicit33.C: Remove stray semicolon.
	* g++.old-deja/g++.pt/explicit35.C: Remove invalid use of template
	keyword.
	* g++.old-deja/g++.pt/explicit71.C: Change error message.
	* g++.old-deja/g++.pt/explicit80.C: Use explicit specialization
	syntax.
	* g++.old-deja/g++.pt/friend28.C: Account for use of
	non-dependent names.
	* g++.old-deja/g++.pt/friend29.C: Likewise.
	* g++.old-deja/g++.pt/friend46.C: Adjust for correct name lookup
	rules.
	* g++.old-deja/g++.pt/friend48.C: Remove stray semicolon.
	* g++.old-deja/g++.pt/instantiate1.C: Use correct class-key.
	* g++.old-deja/g++.pt/instantiate11.C: Adjust for correct name
	lookup rules.
	* g++.old-deja/g++.pt/instantiate8.C: Remove stray semicolon.
	* g++.old-deja/g++.pt/instantiate9.C: Insert missing typename
	keyword.
	* g++.old-deja/g++.pt/memclass20.C: Likewise.
	* g++.old-deja/g++.pt/memclass5.C: Likewise.
	* g++.old-deja/g++.pt/memclass7.C: Remove invalid use of template
	keyword.
	* g++.old-deja/g++.pt/memtemp75.C: Likewise.
	* g++.old-deja/g++.pt/memtemp81.C: Remove stray semicolon.
	* g++.old-deja/g++.pt/memtemp87.C: Add missing access specifier.
	* g++.old-deja/g++.pt/overload13.C: Correct error messages.
	* g++.old-deja/g++.pt/parms2.C: Add missing typename keyword.
	* g++.old-deja/g++.pt/ptrmem1.C: Remove invalid use of template
	keyword.
	* g++.old-deja/g++.pt/spec10.C: Likewise.
	* g++.old-deja/g++.pt/spec28.C: Reorder declarations.
	* g++.old-deja/g++.pt/t10.C: Add explicit specialization syntax.
	* g++.old-deja/g++.pt/t32.C: Remove stray semicolon.
	* g++.old-deja/g++.pt/t35a.C: Add explicit specialization syntax.
	* g++.old-deja/g++.pt/ttp24.C: Remove stray semicolon.
	* g++.old-deja/g++.pt/ttp62.C: Likewise.
	* g++.old-deja/g++.pt/ttp64.C: Likewise.
	* g++.old-deja/g++.pt/typename11.C: Add missing typename keyword.
	* g++.old-deja/g++.pt/typename15.C: Likewise.
	* g++.old-deja/g++.pt/typename22.C: Likewise.
	* g++.old-deja/g++.pt/typename6.C: Change error messages.
	* g++.old-deja/g++.pt/using1.C: Remove stray semicolon.
	* g++.old-deja/g++.pt/virtual2.C: Likewise.
	* g++.old-deja/g++.robertl/eb118.C: Add explicit specialization
	syntax.
	* g++.old-deja/g++.robertl/eb27.C: Now fails due to use of named
	return value extension.
	* g++.old-deja/g++.robertl/eb43.C: Remove stray semicolon.
	* g++.old-deja/g++.robertl/eb79.C: Correct for new name lookup rules.
	* g++.old-deja/g++.robertl/eb82.C: Remove stray semicolons.
	* g++.old-deja/g++.robertl/eb86.C: Add missing forward declaration.

From-SVN: r60559
2002-12-28 07:48:15 +00:00
Mark Mitchell
239b7deaef gjavah.c (print_name_for_stub_or_jni): Adjust call to print_cxx_classname.
* gjavah.c (print_name_for_stub_or_jni): Adjust call to
	print_cxx_classname.
	(print_cxx_classname): Add add_scope parameter.
	(print_class_decls): Do not emit a semicolon after the extern
	"Java" block.
	(process_file): Adjust calls to print_cxx_classname.

From-SVN: r60555
2002-12-28 06:29:24 +00:00
Kazu Hirata
62fbd434b0 h8300.md (*iorhi_shift_8): Change the name to *iorhi_ashift_8.
* config/h8300/h8300.md (*iorhi_shift_8): Change the name to
	*iorhi_ashift_8.
	(*iorhi_lshiftrt_8): New.

From-SVN: r60553
2002-12-28 04:15:27 +00:00
Joseph Myers
27e3f16dba * doc/include/texinfo.tex: Update to version 2002-12-26.16.
From-SVN: r60545
2002-12-27 20:07:55 +00:00
Gerald Pfeifer
b09975def5 * doc/contrib.texi (Contributors): Add Abramo and Roberto Bagnara.
From-SVN: r60544
2002-12-27 17:49:15 +00:00
GCC Administrator
5eeacaf296 Daily bump.
From-SVN: r60543
2002-12-27 08:17:28 +00:00
Kazu Hirata
f411c849f0 h8300-protos.h: Fix comment typos.
* config/h8300/h8300-protos.h: Fix comment typos.
	Update copyright.
	* config/h8300/h8300.c: Fix comment typos.

From-SVN: r60527
2002-12-26 21:11:34 +00:00
Kazu Hirata
b976d7a007 * config/h8300/h8300.h (IDENT_ASM_OP): End with a tab.
From-SVN: r60525
2002-12-26 20:58:10 +00:00
Kazu Hirata
d1f876538e athlon.md: Fix comment typos.
* config/i386/athlon.md: Fix comment typos.
	* config/i386/crtdll.h: Likewise.
	* config/i386/djgpp.h: Likewise.
	* config/i386/i386-interix.h: Likewise.
	* config/i386/i386.c: Likewise.
	* config/i386/i386.h: Likewise.
	* config/i386/i386.md: Likewise.
	* config/i386/k6.md: Likewise.
	* config/i386/mingw32.h: Likewise.
	* config/i386/pentium.md: Likewise.
	* config/i386/sco5.h: Likewise.
	* config/i386/winnt.c: Likewise.
	* config/i386/xmmintrin.h: Likewise.

From-SVN: r60524
2002-12-26 18:45:04 +00:00
Nathan Sidwell
eab5474f6d re PR c++/4803 (Inline function never defined)
cp:
	PR c++/4803
	* decl2.c (mark_used): Defer inline functions.
	(finish_file): Merge deferred_fns loops. Check all used
	inline functions have a definition.
	* method.c (make_thunk): Thunks are not inline.
testsuite:
	* g++.dg/warn/inline1.C: New test.
	* g++.old-deja/g++.brendan/crash64.C: Remove spurious inlines.
	* g++.old-deja/g++.jason/synth10.C: Likewise.
	* g++.old-deja/g++.mike/net31.C: Likewise.
	* g++.old-deja/g++.mike/p8786.C: Likewise.

From-SVN: r60521
2002-12-26 18:20:14 +00:00
Jose Renau
ecd4a73b20 ssa-dce.c (EXECUTE_IF_UNNECESSARY): Verify INSN is an INSN_P before checking to see if it is dead.
* ssa-dce.c (EXECUTE_IF_UNNECESSARY): Verify INSN is an
        INSN_P before checking to see if it is dead.
        (mark_all_insn_unnecessary): Similarly.
        (ssa_eliminate_dead_code): Similarly.
        * rtl.h (struct rtx_def): Update comments for in_struct usage
        in dead code elimination pass.
        (INSN_DEAD_CODE_P): Allow JUMP_INSN and CALL_INSN as well.

From-SVN: r60520
2002-12-26 11:15:56 -07:00
Andreas Schwab
b17bb466ac * config.gcc (powerpc*-*-*, rs6000-*-*): Fix assignment syntax.
From-SVN: r60519
2002-12-26 18:01:22 +00:00
Nathan Sidwell
aac1406f30 PR c++/5116, c++/764
cp:
        PR c++/5116, c++/764
        * call.c (build_new_op): Make sure template class operands are
        instantiated.
testsuite:
        * g++.dg/template/friend10.C: New test.
        * g++.dg/template/conv5.C: New test.

From-SVN: r60514
2002-12-26 12:23:11 +00:00
GCC Administrator
223231230e Daily bump.
From-SVN: r60513
2002-12-26 08:17:39 +00:00
David Edelsohn
b21fb038c9 rs6000.c (rs6000_override_options): Convert to tartet_flags_explicit.
* config/rs6000/rs6000.c (rs6000_override_options): Convert to
        tartet_flags_explicit.
        * config/rs6000/rs6000.h (MASK_MULTIPLE_SET, MASK_STRING_SET): Delete.
        Compact target_flags bits.
        (TARGET_MULTIPLE_SET, TARGET_STRING_SET): Delete.
        (TARGET_SWITCHES): Delete references to *_SET flags.

From-SVN: r60504
2002-12-25 20:30:59 -05:00
Jan Hubicka
abd2dd6d22 * i386.md (memory attribute): Fix setcc attribute.
From-SVN: r60503
2002-12-25 19:32:51 +00:00
Kazu Hirata
d55d8fc700 output.h: Fix comment typos.
* output.h: Fix comment typos.
	* predict.c: Likewise.
	* print-tree.c: Likewise.
	* profile.c: Likewise.
	* ra-build.c: Likewise.
	* ra-colorize.c: Likewise.
	* ra-debug.c: Likewise.
	* ra-rewrite.c: Likewise.
	* ra.c: Likewise.
	* ra.h: Likewise.
	* real.c: Likewise.
	* recog.c: Likewise.
	* reg-stack.c: Likewise.
	* regclass.c: Likewise.

From-SVN: r60502
2002-12-25 15:15:10 +00:00
Kazu Hirata
7a770d8b10 h8300.c (print_operand_address): Do not negate a negative number when printing one.
* config/h8300/h8300.c (print_operand_address): Do not negate
	a negative number when printing one.

From-SVN: r60501
2002-12-25 15:02:03 +00:00
Kazu Hirata
7d6ac401b6 h8300-protos.h: Add prototypes for output_plussi, compute_plussi_length, and compute_plussi_cc.
* config/h8300/h8300-protos.h: Add prototypes for
	output_plussi, compute_plussi_length, and compute_plussi_cc.
	* config/h8300/h8300.c (output_plussi): New.
	(compute_plussi_length): Likewise.
	(compute_plussi_cc): Likewise.
	* config/h8300/h8300.md (addsi_h8300h): Call
	output_plussi, compute_plussi_length, and compute_plussi_cc.

From-SVN: r60500
2002-12-25 14:54:50 +00:00