[MS ABI] Never reference dllimport'd vtables
Referencing a dllimported vtable is impossible in a constexpr constructor. It would be friendlier to C++ programmers if we synthesized a copy of the vftable which referenced imported virtual functions. This would let us initialize the object in a way which preserves both the intent to import functionality from another DLL while also making constexpr work. Differential Revision: http://reviews.llvm.org/D17061 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@260388 91177308-0d34-0410-b5e6-96231b3b80d8
Showing
- lib/AST/MicrosoftMangle.cpp 4 additions, 1 deletionlib/AST/MicrosoftMangle.cpp
- lib/AST/VTableBuilder.cpp 0 additions, 1 deletionlib/AST/VTableBuilder.cpp
- lib/CodeGen/MicrosoftCXXABI.cpp 11 additions, 4 deletionslib/CodeGen/MicrosoftCXXABI.cpp
- test/CodeGenCXX/dllimport-rtti.cpp 2 additions, 1 deletiontest/CodeGenCXX/dllimport-rtti.cpp
- test/CodeGenCXX/dllimport.cpp 1 addition, 1 deletiontest/CodeGenCXX/dllimport.cpp
- test/CodeGenCXX/microsoft-abi-vftables.cpp 3 additions, 4 deletionstest/CodeGenCXX/microsoft-abi-vftables.cpp
Loading
Please register or sign in to comment