diff options
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/cp/class.c | 2 | ||||
-rw-r--r-- | gcc/cp/cp-lang.c | 2 | ||||
-rw-r--r-- | gcc/cp/cp-tree.h | 1 | ||||
-rw-r--r-- | gcc/cp/lex.c | 4 | ||||
-rw-r--r-- | gcc/cp/method.c | 2 |
6 files changed, 16 insertions, 4 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index d2c80e0302f..410479c0d22 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,12 @@ +2002-02-28 Neil Booth <neil@daikokuya.demon.co.uk> + + * class.c (build_clone): Update. + * cp-lang.c (LANG_HOOKS_DUP_LANG_SPECIFIC_DECL): Redefine. + * cp-tree.h (cxx_dup_lang_specific_decl): New. + * lex.c (copy_lang_decl): Rename cxx_dup_lang_specific_decl. + (copy_decl): Update. + * method.c (make_thunk): Update. + 2002-02-27 Zack Weinberg <zack@codesourcery.com> * decl2.c: Delete traditional-mode-related code copied from diff --git a/gcc/cp/class.c b/gcc/cp/class.c index 40702867405..9e3c110a2e5 100644 --- a/gcc/cp/class.c +++ b/gcc/cp/class.c @@ -4038,7 +4038,7 @@ build_clone (fn, name) for (parms = DECL_ARGUMENTS (clone); parms; parms = TREE_CHAIN (parms)) { DECL_CONTEXT (parms) = clone; - copy_lang_decl (parms); + cxx_dup_lang_specific_decl (parms); } } diff --git a/gcc/cp/cp-lang.c b/gcc/cp/cp-lang.c index c40330bc319..800a8701de2 100644 --- a/gcc/cp/cp-lang.c +++ b/gcc/cp/cp-lang.c @@ -50,6 +50,8 @@ static HOST_WIDE_INT cxx_get_alias_set PARAMS ((tree)); #define LANG_HOOKS_EXPAND_CONSTANT cplus_expand_constant #undef LANG_HOOKS_SAFE_FROM_P #define LANG_HOOKS_SAFE_FROM_P c_safe_from_p +#undef LANG_HOOKS_DUP_LANG_SPECIFIC_DECL +#define LANG_HOOKS_DUP_LANG_SPECIFIC_DECL cxx_dup_lang_specific_decl #undef LANG_HOOKS_PRINT_STATISTICS #define LANG_HOOKS_PRINT_STATISTICS cxx_print_statistics #undef LANG_HOOKS_PRINT_XNODE diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h index 65811323751..73aed25d5bf 100644 --- a/gcc/cp/cp-tree.h +++ b/gcc/cp/cp-tree.h @@ -3922,6 +3922,7 @@ extern tree build_java_class_ref PARAMS ((tree)); /* in input.c */ /* in lex.c */ +extern void cxx_dup_lang_specific_decl PARAMS ((tree)); extern tree make_pointer_declarator PARAMS ((tree, tree)); extern tree make_reference_declarator PARAMS ((tree, tree)); extern tree make_call_declarator PARAMS ((tree, tree, tree, tree)); diff --git a/gcc/cp/lex.c b/gcc/cp/lex.c index 885002a9793..d338632bc32 100644 --- a/gcc/cp/lex.c +++ b/gcc/cp/lex.c @@ -1516,7 +1516,7 @@ retrofit_lang_decl (t) } void -copy_lang_decl (node) +cxx_dup_lang_specific_decl (node) tree node; { int size; @@ -1548,7 +1548,7 @@ copy_decl (decl) tree copy; copy = copy_node (decl); - copy_lang_decl (copy); + cxx_dup_lang_specific_decl (copy); return copy; } diff --git a/gcc/cp/method.c b/gcc/cp/method.c index 52a6a8cf59d..35e40ebbac6 100644 --- a/gcc/cp/method.c +++ b/gcc/cp/method.c @@ -302,7 +302,7 @@ make_thunk (function, delta, vcall_index) { thunk = build_decl (FUNCTION_DECL, thunk_id, TREE_TYPE (func_decl)); DECL_LANG_SPECIFIC (thunk) = DECL_LANG_SPECIFIC (func_decl); - copy_lang_decl (func_decl); + cxx_dup_lang_specific_decl (func_decl); SET_DECL_ASSEMBLER_NAME (thunk, thunk_id); DECL_CONTEXT (thunk) = DECL_CONTEXT (func_decl); TREE_READONLY (thunk) = TREE_READONLY (func_decl); |