diff options
author | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-01-22 14:37:29 +0000 |
---|---|---|
committer | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-01-22 14:37:29 +0000 |
commit | f608e0135a3d318462d2d3f7338eb8835971d62e (patch) | |
tree | 6b15273baf8a967d86ed361f0adeeae2fb32eb99 | |
parent | 47c251e561cd22357a6f18c9c210ed29abbbedc9 (diff) | |
download | gcc-f608e0135a3d318462d2d3f7338eb8835971d62e.tar.gz |
* class.c (build_base_path): Tweak formatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@49075 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/cp/ChangeLog | 174 | ||||
-rw-r--r-- | gcc/cp/class.c | 26 |
2 files changed, 104 insertions, 96 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index b4c9f704eb1..18f5038fcab 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,7 @@ +2002-01-22 Jason Merrill <jason@redhat.com> + + * class.c (build_base_path): Tweak formatting. + 2002-01-19 Nathan Sidwell <nathan@codesourcery.com> Fix regression introduced with patch for c++/775 @@ -25,6 +29,7 @@ 2002-01-10 Ira Ruben <ira@apple.com> + PR c++/907 * decl.c (start_method): Handle attrlist. 2002-01-10 Jakub Jelinek <jakub@redhat.com> @@ -40,7 +45,7 @@ 2002-01-09 Graham Stott <grahams@redhat.com> - * decl.h ( grokdeclarator): Wrap long line. + * decl.h (grokdeclarator): Wrap long line. * semantics.c (FINISH_COND): Uppercase macro paramaters and add parenthesis. @@ -86,26 +91,27 @@ * decl2.c (coerce_new_type): Downgrade error for size_t mismatch to pedwarn. + PR c++/3536 * method.c (make_thunk): If !flag_weak, give the thunk the function's linkage. (use_thunk): Here, too. 2002-01-07 Graham Stott <grahams@redhat.com> - * error.c: Update copyright date. - (print_scope_operator): Add parenthesis. - (print_left_paren): Likewise. - (print_right_paren): Likewise. - (print_left_bracket): Likewise. - (print_right_bracket): Likewise. - (print_template_argument_list_start): Likewise. - (print_template_argument_list_end): Likewise. - (print_non_consecutive_character): Likewise. - (print_tree_identifier): Likewise. - (print_identifier): Likewise. - (NEXT_CODE): Uppercase macro parameter. - (ident_fndecl): Delete unused. - (GLOBAL_THING): Likewise. + * error.c: Update copyright date. + (print_scope_operator): Add parenthesis. + (print_left_paren): Likewise. + (print_right_paren): Likewise. + (print_left_bracket): Likewise. + (print_right_bracket): Likewise. + (print_template_argument_list_start): Likewise. + (print_template_argument_list_end): Likewise. + (print_non_consecutive_character): Likewise. + (print_tree_identifier): Likewise. + (print_identifier): Likewise. + (NEXT_CODE): Uppercase macro parameter. + (ident_fndecl): Delete unused. + (GLOBAL_THING): Likewise. 2002-01-06 Graham Stott <grahams@redhat.com> @@ -240,76 +246,76 @@ (CLASSTYPE_VFIELDS): Whitespace. (VF_DERIVED_VALUE): Wrap long line. (NAMESPACE_LEVEL): Whitespace. - (CAN_HAVE_FULL_LANG_DECL_P): Remove parenthesis. - (DEFARG_POINTER): Whitespace. - (DECL_NEEDED_P): Remove parenthesis. - (DECL_LANGUAGE): Whitespace. - (SET_DECL_LANGUAGE): Add parenthesis. - (DECL_CONSTRUCTOR_P): Whitespace and wrap. - (DECL_OVERLOADED_OPERATOR_P): Remove parenthesis. - (DECL_IN_AGGR_P): Whitespace. - (DECL_FRIEND_P): Likewise. - (DECL_BEFRIENDING_CLASSES): Likewise. - (DECL_STATIC_FUNCTION_P): Whitespace and wrap. - (DECL_NONCONVERTING_P): Whitespace. - (DECL_PURE_VIRTUAL_P): Likewise. - (DECL_NEEDS_FINAL_OVERRIDER_P): Likewise. - (DECL_PENDING_INLINE_INFO): Whitespace. - (DECL_SORTED_FIELDS): Likewise. - (DECL_DEFERRED_FN): Likewise. - (DECL_TEMPLATE_INFO): Likewise. - (CLASSTYPE_TEMPLATE_INFO): Whitespace and wrap. - (TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO); Likewise. - (SET_TYPE_TEMPLATE_INFO): Add parenthesis. - (TMPL_ARGS_LEVEL): Likewise. - (SET_TMPL_ARGS_LEVEL): Likewise. - (INNERMOST_TEMPLATE_PARMS): Whitespace. - (C_TYPEDEF_EXPLICITLY_SIGNED): Uppercase macro parameter. - (INTEGRAL_CODE_P(CODE): Add parenthesis. - (CP_INTEGRAL_TYPE_P): Remove parenthesis. - (TYPE_HAS_CONSTRUCTOR): Whitespace. - (TREE_HAS_CONSTRUCTOR): Likewise. - (TYPE_HAS_DESTRUCTOR): Likewise. - (TYPE_HAS_REAL_ASSIGN_REF): Likewise. - (TYPE_HAS_COMPLEX_ASSIGN_REF): Likewise. - (TYPE_HAS_ABSTRACT_ASSIGN_REF): Likewise. - (TYPE_HAS_COMPLEX_INIT_REF): Likewise. - (TYPE_HAS_NONTRIVIAL_DESTRUCTOR): Likewise. - (TYPE_PTRMEMFUNC_P): Likewise. - (TYPE_PTRMEMFUNC_FLAG): Likewise. - (TYPE_GET_PTRMEMFUNC_TYPE): Likewise. - (TYPE_SET_PTRMEMFUNC_TYPE): Likewise. - (TYPE_PTRMEM_CLASS_TYPE): Remove parenthesis. - (TYPE_PTRMEM_POINTED_TO_TYPE): Likewise. - (DECL_ACCESS): Whitespace. - (DECL_GLOBAL_CTOR_P): Remove parenthesis. - (DECL_GLOBAL_DTOR_P): Likewise. - (GLOBAL_INIT_PRIORITY): Likewise. + (CAN_HAVE_FULL_LANG_DECL_P): Remove parenthesis. + (DEFARG_POINTER): Whitespace. + (DECL_NEEDED_P): Remove parenthesis. + (DECL_LANGUAGE): Whitespace. + (SET_DECL_LANGUAGE): Add parenthesis. + (DECL_CONSTRUCTOR_P): Whitespace and wrap. + (DECL_OVERLOADED_OPERATOR_P): Remove parenthesis. + (DECL_IN_AGGR_P): Whitespace. + (DECL_FRIEND_P): Likewise. + (DECL_BEFRIENDING_CLASSES): Likewise. + (DECL_STATIC_FUNCTION_P): Whitespace and wrap. + (DECL_NONCONVERTING_P): Whitespace. + (DECL_PURE_VIRTUAL_P): Likewise. + (DECL_NEEDS_FINAL_OVERRIDER_P): Likewise. + (DECL_PENDING_INLINE_INFO): Whitespace. + (DECL_SORTED_FIELDS): Likewise. + (DECL_DEFERRED_FN): Likewise. + (DECL_TEMPLATE_INFO): Likewise. + (CLASSTYPE_TEMPLATE_INFO): Whitespace and wrap. + (TEMPLATE_TEMPLATE_PARM_TEMPLATE_INFO); Likewise. + (SET_TYPE_TEMPLATE_INFO): Add parenthesis. + (TMPL_ARGS_LEVEL): Likewise. + (SET_TMPL_ARGS_LEVEL): Likewise. + (INNERMOST_TEMPLATE_PARMS): Whitespace. + (C_TYPEDEF_EXPLICITLY_SIGNED): Uppercase macro parameter. + (INTEGRAL_CODE_P(CODE): Add parenthesis. + (CP_INTEGRAL_TYPE_P): Remove parenthesis. + (TYPE_HAS_CONSTRUCTOR): Whitespace. + (TREE_HAS_CONSTRUCTOR): Likewise. + (TYPE_HAS_DESTRUCTOR): Likewise. + (TYPE_HAS_REAL_ASSIGN_REF): Likewise. + (TYPE_HAS_COMPLEX_ASSIGN_REF): Likewise. + (TYPE_HAS_ABSTRACT_ASSIGN_REF): Likewise. + (TYPE_HAS_COMPLEX_INIT_REF): Likewise. + (TYPE_HAS_NONTRIVIAL_DESTRUCTOR): Likewise. + (TYPE_PTRMEMFUNC_P): Likewise. + (TYPE_PTRMEMFUNC_FLAG): Likewise. + (TYPE_GET_PTRMEMFUNC_TYPE): Likewise. + (TYPE_SET_PTRMEMFUNC_TYPE): Likewise. + (TYPE_PTRMEM_CLASS_TYPE): Remove parenthesis. + (TYPE_PTRMEM_POINTED_TO_TYPE): Likewise. + (DECL_ACCESS): Whitespace. + (DECL_GLOBAL_CTOR_P): Remove parenthesis. + (DECL_GLOBAL_DTOR_P): Likewise. + (GLOBAL_INIT_PRIORITY): Likewise. (DECL_TEMPLATE_PARMS): Likewise. - (DECL_TEMPLATE_RESULT): Likewise. - (DECL_TEMPLATE_INSTANTIATIONS): Likewise. - (DECL_TEMPLATE_SPECIALIZATIONS): Likewise. - (DECL_IMPLICIT_TYPEDEF_P): Remove parenthesis. - (SET_DECL_IMPLICIT_TYPEDEF_P): Likewise. - (PRIMARY_TEMPLATE_P): Add parenthesis. - (DECL_USE_TEMPLATE): Whitespace. - (CLASSTYPE_IMPLICIT_INSTANTIATION): Likewise. - (SET_CLASSTYPE_IMPLICIT_INSTANTIATION): Likewise. - (CLASSTYPE_EXPLICIT_INSTANTIATION): Likewise. - (SET_CLASSTYPE_EXPLICIT_INSTANTIATION): Likewise. - (CALL_DECLARATOR_PARMS): Remove parenthesis. - (CALL_DECLARATOR_QUALS): Likewise. - (CALL_DECLARATOR_EXCEPTION_SPEC): Likewise. - (TEMP_NAME_P): Wrap. - (VFIELD_NAME_P): Likewise. - (B_SET): Uppercase macro parameters and add parenthesis. - (B_CLR): Likewise. - (B_TST): Likewise. - (LOOKUP_NAMESPACES_ONLY): Uppercase macro parameters. - (LOOKUP_TYPES_ONLY): Uppercase macro parameters. - (LOOKUP_QUALIFIERS_ONLY): Uppercase macro parameters. - (same_or_base_type_p): Likewise. - (cp_deprecated): Likewise. + (DECL_TEMPLATE_RESULT): Likewise. + (DECL_TEMPLATE_INSTANTIATIONS): Likewise. + (DECL_TEMPLATE_SPECIALIZATIONS): Likewise. + (DECL_IMPLICIT_TYPEDEF_P): Remove parenthesis. + (SET_DECL_IMPLICIT_TYPEDEF_P): Likewise. + (PRIMARY_TEMPLATE_P): Add parenthesis. + (DECL_USE_TEMPLATE): Whitespace. + (CLASSTYPE_IMPLICIT_INSTANTIATION): Likewise. + (SET_CLASSTYPE_IMPLICIT_INSTANTIATION): Likewise. + (CLASSTYPE_EXPLICIT_INSTANTIATION): Likewise. + (SET_CLASSTYPE_EXPLICIT_INSTANTIATION): Likewise. + (CALL_DECLARATOR_PARMS): Remove parenthesis. + (CALL_DECLARATOR_QUALS): Likewise. + (CALL_DECLARATOR_EXCEPTION_SPEC): Likewise. + (TEMP_NAME_P): Wrap. + (VFIELD_NAME_P): Likewise. + (B_SET): Uppercase macro parameters and add parenthesis. + (B_CLR): Likewise. + (B_TST): Likewise. + (LOOKUP_NAMESPACES_ONLY): Uppercase macro parameters. + (LOOKUP_TYPES_ONLY): Uppercase macro parameters. + (LOOKUP_QUALIFIERS_ONLY): Uppercase macro parameters. + (same_or_base_type_p): Likewise. + (cp_deprecated): Likewise. 2002-01-05 Richard Henderson <rth@redhat.com> diff --git a/gcc/cp/class.c b/gcc/cp/class.c index 6e9e34e8faf..f9d597cafb7 100644 --- a/gcc/cp/class.c +++ b/gcc/cp/class.c @@ -252,7 +252,7 @@ build_base_path (code, expr, binfo, nonnull) int nonnull; { tree v_binfo = NULL_TREE; - tree t; + tree d_binfo = NULL_TREE; tree probe; tree offset; tree target_type; @@ -263,11 +263,13 @@ build_base_path (code, expr, binfo, nonnull) if (expr == error_mark_node || binfo == error_mark_node || !binfo) return error_mark_node; - - for (probe = binfo; probe; - t = probe, probe = BINFO_INHERITANCE_CHAIN (probe)) - if (!v_binfo && TREE_VIA_VIRTUAL (probe)) - v_binfo = probe; + + for (probe = binfo; probe; probe = BINFO_INHERITANCE_CHAIN (probe)) + { + d_binfo = probe; + if (!v_binfo && TREE_VIA_VIRTUAL (probe)) + v_binfo = probe; + } probe = TYPE_MAIN_VARIANT (TREE_TYPE (expr)); if (want_pointer) @@ -276,13 +278,13 @@ build_base_path (code, expr, binfo, nonnull) my_friendly_assert (code == MINUS_EXPR ? same_type_p (BINFO_TYPE (binfo), probe) : code == PLUS_EXPR - ? same_type_p (BINFO_TYPE (t), probe) + ? same_type_p (BINFO_TYPE (d_binfo), probe) : false, 20010723); if (code == MINUS_EXPR && v_binfo) { error ("cannot convert from base `%T' to derived type `%T' via virtual base `%T'", - BINFO_TYPE (binfo), BINFO_TYPE (t), BINFO_TYPE (v_binfo)); + BINFO_TYPE (binfo), BINFO_TYPE (d_binfo), BINFO_TYPE (v_binfo)); return error_mark_node; } @@ -303,12 +305,12 @@ build_base_path (code, expr, binfo, nonnull) if (v_binfo && !fixed_type_p) { /* Going via virtual base V_BINFO. We need the static offset - from V_BINFO to BINFO, and the dynamic offset from T to - V_BINFO. That offset is an entry in T's vtable. */ + from V_BINFO to BINFO, and the dynamic offset from D_BINFO to + V_BINFO. That offset is an entry in D_BINFO's vtable. */ tree v_offset = build_vfield_ref (build_indirect_ref (expr, NULL), TREE_TYPE (TREE_TYPE (expr))); - v_binfo = binfo_for_vbase (BINFO_TYPE (v_binfo), BINFO_TYPE (t)); + v_binfo = binfo_for_vbase (BINFO_TYPE (v_binfo), BINFO_TYPE (d_binfo)); v_offset = build (PLUS_EXPR, TREE_TYPE (v_offset), v_offset, BINFO_VPTR_FIELD (v_binfo)); @@ -326,7 +328,7 @@ build_base_path (code, expr, binfo, nonnull) offset = v_offset; } - target_type = code == PLUS_EXPR ? BINFO_TYPE (binfo) : BINFO_TYPE (t); + target_type = code == PLUS_EXPR ? BINFO_TYPE (binfo) : BINFO_TYPE (d_binfo); target_type = cp_build_qualified_type (target_type, cp_type_quals (TREE_TYPE (TREE_TYPE (expr)))); |