summaryrefslogtreecommitdiffstats
path: root/gcc
diff options
context:
space:
mode:
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>2002-05-18 04:47:31 +0000
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>2002-05-18 04:47:31 +0000
commit61aae38f395ee535097c3e711eb086bb66fc07ea (patch)
treeff2b1967e42c02a870d262b5b772a86d58f1f76e /gcc
parent06579c95b89d1428c8c9abbee865fd7dcbfbea85 (diff)
downloadppe42-gcc-61aae38f395ee535097c3e711eb086bb66fc07ea.tar.gz
ppe42-gcc-61aae38f395ee535097c3e711eb086bb66fc07ea.zip
* decl2.c (import_export_decl): If we clear
DECL_NOT_REALLY_EXTERN, make sure DECL_EXTERNAL is set. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@53576 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/decl2.c8
2 files changed, 12 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 3adedeb13f3..16bbf156bcf 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2002-05-18 Jason Merrill <jason@redhat.com>
+
+ * decl2.c (import_export_decl): If we clear
+ DECL_NOT_REALLY_EXTERN, make sure DECL_EXTERNAL is set.
+
2002-05-15 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
PR c++/6620
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c
index ee10fff29e3..238bde8d900 100644
--- a/gcc/cp/decl2.c
+++ b/gcc/cp/decl2.c
@@ -2481,7 +2481,10 @@ import_export_decl (decl)
comdat_linkage (decl);
}
else
- DECL_NOT_REALLY_EXTERN (decl) = 0;
+ {
+ DECL_EXTERNAL (decl) = 1;
+ DECL_NOT_REALLY_EXTERN (decl) = 0;
+ }
}
else if (DECL_FUNCTION_MEMBER_P (decl))
{
@@ -2497,6 +2500,9 @@ import_export_decl (decl)
&& ! flag_implement_inlines
&& !DECL_VINDEX (decl)));
+ if (!DECL_NOT_REALLY_EXTERN (decl))
+ DECL_EXTERNAL (decl) = 1;
+
/* Always make artificials weak. */
if (DECL_ARTIFICIAL (decl) && flag_weak)
comdat_linkage (decl);
OpenPOWER on IntegriCloud