1. 12 Dec, 2003 3 commits
    • re PR c++/13118 ([ABI] Missed covariant return thunk) · e00853fd
      cp:
      	PR c++/13118
      	* cp-tree.h (lang_decl_u): Add thunk_alias member.
      	(THUNK_VIRTUAL_OFFSET): Must be a FUNCTION_DECL.
      	(THUNK_ALIAS_P): Remove.
      	(THUNK_ALIAS): Adjust.
      	* class.c (update_vtable_entry_for_fn): Get the vbase within the
      	overriding function's return type.
      	(dump_thunk): Adjust THUNK_ALIAS printing.
      	(build_vtbl_initializer): Adjust THUNK_ALIAS use.
      	* method.c (make_thunk): Revert 12881 test change. Clear
      	THUNK_ALIAS.
      	(finish_thunk): Adjust THUNK_ALIAS setting.
      	(use_thunk): Adjust THUNK_ALIAS use.
      	* semantics.c (emit_associated_thunks): Likewise.
      testsuite:
      	PR c++/13118
      	* g++.dg/abi/covariant3.C: New.
      
      From-SVN: r74576
      Nathan Sidwell committed
    • PR c++/13114, c++/13115 · 3075b327
      	PR c++/13114, c++/13115
      	* class.c (layout_empty_base): Propagate the move of an empty base
      	to offset zero.
      
      From-SVN: r74573
      Nathan Sidwell committed
    • re PR c++/12881 (ICE in make_thunk) · 90d46c28
      	PR c++/12881
      	* method.c (make_thunk): Deal with thunk aliases when searching
      	for a thunk. Robustify assertion.
      
      From-SVN: r74571
      Nathan Sidwell committed
  2. 11 Dec, 2003 1 commit
  3. 10 Dec, 2003 2 commits
    • re PR c/13134 (Visibility attribute is ignored) · facef326
      PR c/13134
      * c--decl.c (duplicate_decls): Copy visibility flag when appropriate.
      * cp/decl.c (duplicate_decls): Copy visibility flag when appropriate.
      * testsuite/lib/gcc-dg.exp (dg-require-visibility): Define.
      * testsuite/lib/target-supports (check_visibility_available): Define.
      * testsuite/gcc.dg/visibility-1.c: New test.
      * testsuite/gcc.dg/visibility-2.c: Likewise.
      * testsuite/gcc.dg/visibility-3.c: Likewise.
      * testsuite/gcc.dg/visibility-4.c: Likewise.
      * testsuite/gcc.dg/visibility-5.c: Likewise.
      * testsuite/gcc.dg/visibility-6.c: Likewise.
      * testsuite/g++.dg/ext/visibility-1.C: Likewise.
      * testsuite/g++.dg/ext/visibility-2.C: Likewise.
      * testsuite/g++.dg/ext/visibility-3.C: Likewise.
      * testsuite/g++.dg/ext/visibility-4.C: Likewise.
      * testsuite/g++.dg/ext/visibility-5.C: Likewise.
      * testsuite/g++.dg/ext/visibility-6.C: Likewise.
      
      From-SVN: r74487
      Matt Austern committed
  4. 09 Dec, 2003 2 commits
  5. 08 Dec, 2003 2 commits
  6. 07 Dec, 2003 1 commit
    • re PR c++/2294 (using declaration confusion) · 9f6a794d
      	PR c++/2294
      	* name-lookup.c (push_overloaded_decl): Always construct an
      	OVERLOAD unless the declaration is a built-in.
      	(set_namespace_binding): While binding OVERLOADs with only one
      	declaration, we still need to call supplement_binding.
      	* init.c (build_new_1): Deal with an OVERLOAD set when
      	looking up for _Jv_AllocObject.
      	* except.c (build_throw): Likewise for _Jv_Throw.
      
      From-SVN: r74394
      Giovanni Bajo committed
  7. 06 Dec, 2003 4 commits
  8. 05 Dec, 2003 1 commit
  9. 04 Dec, 2003 3 commits
  10. 03 Dec, 2003 1 commit
  11. 02 Dec, 2003 3 commits
  12. 01 Dec, 2003 1 commit
    • re PR c++/9849 (Missing keyword 'template' produces ICE with no diagnostic on… · a668c6ad
      re PR c++/9849 (Missing keyword 'template' produces ICE with no diagnostic on 3.3 (and unreadable diagnostic on 3.4))
      
      	PR c++/9849
      	* g++.dg/template/error4.C: New test.
      	* g++.dg/template/nested3.C: Adjust error markers.
      
      	PR c++/9849
      	* parser.c (cp_lexer_prev_token): New function.
      	(cp_parser_skip_to_closing_parenthesis): Add consume_paren
      	parameter.
      	(cp_parser_nested_name_specifier_opt): Add is_declaration
      	parameter.
      	(cp_parser_nested_name_specifier): Likewise.
      	(cp_parser_class_or_namespace_name): Likewise.
      	(cp_parser_class_name): Likewise.
      	(cp_parser_template_id): Likewise.
      	(cp_parser_template_name): Likewise.
      	(cp_parser_id_expression): Adjust calls to
      	cp_parser_nested_name_specifier_op, cp_parser_template_id,
      	cp_parser_class_name.
      	(cp_parser_unqualified_id): Likewise.
      	(cp_parser_postfix_expression): Likewise.
      	(cp_parser_pseudo_destructor_name): Likewise.
      	(cp_parser_cast_expression): Likewise.
      	(cp_parser_mem_initializer_id): Likewise.
      	(cp_parser_simple_type_specifier): Likewise.
      	(cp_parser_type_name): Likewise.
      	(cp_parser_elaborated_type_specifier): Likewise.
      	(cp_parser_qualified_namespace_specifier): Likewise.
      	(cp_parser_using_declaration): Likewise.
      	(cp_parser_using_directive): Likewise.
      	(cp_parser_ptr_operator): Likewise.
      	(cp_parser_declarator_id): Likewise.
      	(cp_parser_class_head): Likewise.
      	(cp_parser_base_specifier): Likewise.
      	(cp_parser_constructor_declarator_p): Likewise.
      	(cp_parser_direct_declarator): Fix typo in comment.
      	(cp_parser_parenthesized_expression_list): Adjust call to
      	cp_parser_skip_to_closing_parenthesis.
      	(cp_parser_selection_statement): Likewise.
      
      From-SVN: r74087
      Mark Mitchell committed
  13. 23 Nov, 2003 1 commit
  14. 22 Nov, 2003 2 commits
    • re PR c++/5369 (template member friend declaration not honored) · d43f603d
      	PR c++/5369
      	* friend.c (is_friend): Handle member function of a class
      	template as template friend.
      	(do_friend): Likewise.
      	* decl2.c (check_classfn): Add template_header_p parameter.
      	* decl.c (start_decl): Adjust check_classfn call.
      	(grokfndecl): Likewise.
      	* pt.c (is_specialization_of_friend): New function.
      	(uses_template_parms_level): Likewise.
      	(push_template_decl_real): Use uses_template_parms_level.
      	(tsubst_friend_function): Adjust check_classfn call.
      	* cp-tree.h (check_classfn): Adjust declaration.
      	(uses_template_parms_level): Add declaration.
      	(is_specialization_of_friend): Likewise.
      
      	* g++.dg/template/memfriend1.C: New test.
      	* g++.dg/template/memfriend2.C: Likewise.
      	* g++.dg/template/memfriend3.C: Likewise.
      	* g++.dg/template/memfriend4.C: Likewise.
      	* g++.dg/template/memfriend5.C: Likewise.
      	* g++.dg/template/memfriend6.C: Likewise.
      	* g++.dg/template/memfriend7.C: Likewise.
      	* g++.dg/template/memfriend8.C: Likewise.
      	* g++.old-deja/g++.pt/friend44.C: Remove a bogus error.
      
      From-SVN: r73833
      Kriang Lerdsuwanakij committed
  15. 21 Nov, 2003 3 commits
  16. 20 Nov, 2003 2 commits
    • Makefile.in (extraclean): Delete. · a03ad584
      gcc:
      	* Makefile.in (extraclean): Delete.
      	* configure.in (target_list): Remove extraclean.
      	* configure: Regenerate.
      	* doc/makefile.texi, doc/sourcebuild.texi: Update.
      	* objc/Make-lang.in (objc.extraclean): Delete.
      
      gcc/ada:
      	* Make-lang.in (ada.extraclean): Delete.
      
      gcc/cp:
      	* Make-lang.in (c++.extraclean): Delete.
      
      gcc/f:
      	* Make-lang.in (f77.extraclean): Delete.
      
      gcc/java:
      	* Make-lang.in (java.extraclean): Delete.
      
      gcc/treelang:
      	* Make-lang.in (treelang.extraclean): Delete.
      
      From-SVN: r73759
      Joseph Myers committed
    • Makefile.in (lang_checks): Add. · 49a41726
      gcc:
      	* Makefile.in (lang_checks): Add.
      	(check-c++, check-f77, check-java, check-g++, check-g77,
      	check-objc): Remove hardcoded targets.
      	* doc/sourcebuild.texi: Document testsuite hooks.
      	* objc/Make-lang.in (check-objc, lang_checks): Add.
      
      gcc/cp:
      	* Make-lang.in (check-g++, lang_checks): Add.
      
      gcc/f:
      	* Make-lang.in (check-f77, lang_checks): Add.
      
      gcc/java:
      	* Make-lang.in (check-java): Add.
      
      gcc/treelang:
      	* Make-lang.in: Remove obsolete comment.
      
      From-SVN: r73758
      Joseph Myers committed
  17. 18 Nov, 2003 1 commit
  18. 17 Nov, 2003 1 commit
  19. 16 Nov, 2003 1 commit
  20. 15 Nov, 2003 2 commits
  21. 14 Nov, 2003 3 commits