diff options
author | Jan Hubicka <jh@suse.cz> | 2004-06-26 12:23:05 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2004-06-26 10:23:05 +0000 |
commit | e9e4d4ee5bd8785e26bc03f932ffbcfd6b19b918 (patch) | |
tree | 482492d14352ed196a6ab92db32a63475b2fe14e /gcc/cp | |
parent | 5cb2183e8b41ade5f28abc19e852de9081434ae5 (diff) | |
download | gcc-e9e4d4ee5bd8785e26bc03f932ffbcfd6b19b918.zip gcc-e9e4d4ee5bd8785e26bc03f932ffbcfd6b19b918.tar.gz gcc-e9e4d4ee5bd8785e26bc03f932ffbcfd6b19b918.tar.bz2 |
re PR c++/14865 (No instantiation of VTT at -O1)
PR C++/14865
* decl2.c (maybe_emit_vtables): Always import_export_vtable for the
reachability analysis.
From-SVN: r83707
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cp/decl2.c | 8 |
2 files changed, 11 insertions, 3 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index bfb995c..f5d903c 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2004-06-26 Jan Hubicka <jh@suse.cz> + + PR C++/14865 + * decl2.c (maybe_emit_vtables): Always import_export_vtable for the + reachability analysis. + 2004-06-25 Mark Mitchell <mark@codesourcery.com> * cp-mudflap.c (mflang_flush_calls): Fix thinkos resulting from diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c index 5b23519..ae31076 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, |