[LLVMbugs] [Bug 20444] New: VFTable larger than needed for multiple inheritance hierarchy
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Thu Jul 24 16:06:49 PDT 2014
http://llvm.org/bugs/show_bug.cgi?id=20444
Bug ID: 20444
Summary: VFTable larger than needed for multiple inheritance
hierarchy
Product: clang
Version: unspecified
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: LLVM Codegen
Assignee: unassignedclangbugs at nondot.org
Reporter: david.majnemer at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
struct A {
virtual A *f() { return 0; }
};
struct B {
virtual B *f() { return 0; }
};
struct C : A, B {
virtual C *f() { return 0; }
};
A a;
B b;
C c;
B *get_c() { return &c; }
int main() {
get_c()->f();
}
We generate the following:
"??_7C@@6BA@@@":
.long "?f at C@@UAEPAU1 at XZ"
.long "?f at C@@UAEPAU1 at XZ"
Note that the VFTable has the same entry twice in it. This can be very
problematic if we have RTTI because the largest VFTable might not get picked.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20140724/37790540/attachment.html>
More information about the llvm-bugs
mailing list