diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-06-26 10:23:05 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-06-26 10:23:05 +0000 |
commit | 1fec0e58fbbc753ce17d3419198155f42ad0645d (patch) | |
tree | 482492d14352ed196a6ab92db32a63475b2fe14e /gcc/cp/decl2.c | |
parent | 010d0641f1741e7eb160b49ccd521e089828ef2a (diff) | |
download | gcc-1fec0e58fbbc753ce17d3419198155f42ad0645d.tar.gz |
PR C++/14865
* decl2.c (maybe_emit_vtables): Always import_export_vtable for the
reachability analysis.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83707 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/decl2.c')
-rw-r--r-- | gcc/cp/decl2.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c index 5b2351975b9..ae310768b75 100644 --- a/gcc/cp/decl2.c +++ b/gcc/cp/decl2.c @@ -1564,12 +1564,14 @@ maybe_emit_vtables (tree ctype) return false; import_export_class (ctype); - import_export_vtable (primary_vtbl, ctype, 1); /* See if any of the vtables are needed. */ for (vtbl = CLASSTYPE_VTABLES (ctype); vtbl; vtbl = TREE_CHAIN (vtbl)) - if (!DECL_EXTERNAL (vtbl) && DECL_NEEDED_P (vtbl)) - break; + { + import_export_vtable (vtbl, ctype, 1); + if (!DECL_EXTERNAL (vtbl) && DECL_NEEDED_P (vtbl)) + break; + } if (!vtbl) { /* If the references to this class' vtables are optimized away, |