[llvm-bugs] [Bug 26686] New: [MS ABI] dllimport'd class specialization w/ virtual base causes IRGen to go off the rails

via llvm-bugs llvm-bugs at lists.llvm.org
Sun Feb 21 23:10:19 PST 2016


https://llvm.org/bugs/show_bug.cgi?id=26686

            Bug ID: 26686
           Summary: [MS ABI] dllimport'd class specialization w/ virtual
                    base causes IRGen to go off the rails
           Product: clang
           Version: unspecified
          Hardware: PC
                OS: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
          Assignee: unassignedclangbugs at nondot.org
          Reporter: david.majnemer at gmail.com
                CC: dgregor at apple.com, llvm-bugs at lists.llvm.org
    Classification: Unclassified

consider:
class A {
  virtual void m_fn1();
};
template <typename>
struct B : virtual A {};

extern template class __declspec(dllimport) B<int>;
B<int> b;

run with:
~/llvm/Debug+Asserts/bin/clang -cc1 -x c++ -triple i686-pc-win32
-fms-extensions -S -o t.cpp -fno-rtti -emit-llvm -O2 -disable-llvm-optzns

we get:
Global is marked as dllimport, but not external
[2 x i32]* @"\01??_8?$B at H@@7B@"
fatal error: error in backend: Broken module found, compilation aborted!

-- 
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/20160222/8e736749/attachment.html>


More information about the llvm-bugs mailing list