diff options
author | Jason Merrill <jason@gcc.gnu.org> | 2002-05-14 10:14:43 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2002-05-14 10:14:43 -0400 |
commit | affb23402ddfb8d402df9f941421936e7fcf7b01 (patch) | |
tree | 87a9cba59ef842297cf196a05ab7546760e62efb /gcc | |
parent | 4d604303a6430734aed8d6f4d377475668693bd3 (diff) | |
download | gcc-affb23402ddfb8d402df9f941421936e7fcf7b01.zip gcc-affb23402ddfb8d402df9f941421936e7fcf7b01.tar.gz gcc-affb23402ddfb8d402df9f941421936e7fcf7b01.tar.bz2 |
revert last checkin
From-SVN: r53457
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/cp/decl2.c | 7 | ||||
-rw-r--r-- | gcc/cp/rtti.c | 6 |
3 files changed, 5 insertions, 12 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index da89625..d5facc5 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -5,10 +5,6 @@ (build_base_path): Vtable contents are constant. * typeck.c (get_member_function_from_ptrfunc): Likewise. - * rtti.c (emit_tinfo_decl): Call import_export_decl. - * decl2.c (import_export_decl): Set DECL_NOT_REALLY_EXTERN on - tinfo decls by default. Don't mess with the builtins. - 2002-05-12 Jason Merrill <jason@redhat.com> * cp-lang.c (ok_to_generate_alias_set_for_type): Backend-created diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c index 2fd67ae..2054a37 100644 --- a/gcc/cp/decl2.c +++ b/gcc/cp/decl2.c @@ -2514,7 +2514,6 @@ import_export_decl (decl) if (IS_AGGR_TYPE (ctype)) import_export_class (ctype); - DECL_NOT_REALLY_EXTERN (decl) = 1; if (IS_AGGR_TYPE (ctype) && CLASSTYPE_INTERFACE_KNOWN (ctype) && TYPE_POLYMORPHIC_P (ctype) /* If -fno-rtti, we're not necessarily emitting this stuff with @@ -2538,9 +2537,9 @@ import_export_decl (decl) if (flag_weak) comdat_linkage (decl); } - /* We used to exclude the builtin types here, but that broke - emit_support_tinfos. Let rtti.c choose whether or not to emit - them. */ + else if (TYPE_BUILT_IN (ctype) + && same_type_p (ctype, TYPE_MAIN_VARIANT (ctype))) + DECL_NOT_REALLY_EXTERN (decl) = 0; else comdat_linkage (decl); } diff --git a/gcc/cp/rtti.c b/gcc/cp/rtti.c index 63ffcb7..16df801 100644 --- a/gcc/cp/rtti.c +++ b/gcc/cp/rtti.c @@ -1462,11 +1462,9 @@ emit_tinfo_decl (decl_ptr, data) my_friendly_assert (TREE_TYPE (tinfo_decl) == tinfo_decl_type, 20000121); tinfo_type = TREE_TYPE (DECL_NAME (tinfo_decl)); my_friendly_assert (tinfo_type != NULL_TREE, 20000120); - - import_export_decl (tinfo_decl); - if (DECL_REALLY_EXTERN (tinfo_decl) || !DECL_NEEDED_P (tinfo_decl)) + + if (!DECL_NEEDED_P (tinfo_decl)) return 0; - /* Say we've dealt with it. */ TREE_TYPE (DECL_NAME (tinfo_decl)) = NULL_TREE; |