diff options
author | David Majnemer <david.majnemer@gmail.com> | 2016-02-11 17:49:28 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2016-02-11 17:49:28 +0000 |
commit | 2d8b2008c85a88dfbd98949a315432e6d5fa77ac (patch) | |
tree | f0948df0f95c454fda71535e00c7365495f71812 /clang/test/CodeGenCXX/dllimport.cpp | |
parent | 2ad1f851a12a5e8da59a2c6753a8ce2f133835ad (diff) | |
download | bcm5719-llvm-2d8b2008c85a88dfbd98949a315432e6d5fa77ac.tar.gz bcm5719-llvm-2d8b2008c85a88dfbd98949a315432e6d5fa77ac.zip |
Revert "Revert r260388 "[MS ABI] Never reference dllimport'd vtables""
This reverts commit r260449.
We would supress our emission of vftable definitions if we thought
another translation unit would provide the definition because we saw an
explicit instantiation declaration. This is not the case with
dllimport, we want to synthesize a definition of the vftable regardless.
This fixes PR26569.
llvm-svn: 260548
Diffstat (limited to 'clang/test/CodeGenCXX/dllimport.cpp')
-rw-r--r-- | clang/test/CodeGenCXX/dllimport.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/test/CodeGenCXX/dllimport.cpp b/clang/test/CodeGenCXX/dllimport.cpp index b9c850b8b87..e336bfb6924 100644 --- a/clang/test/CodeGenCXX/dllimport.cpp +++ b/clang/test/CodeGenCXX/dllimport.cpp @@ -614,7 +614,7 @@ USEMEMFUNC(V, foo) struct __declspec(dllimport) W { virtual void foo() {} }; USECLASS(W) // vftable: -// MO1-DAG: @"\01??_7W@@6B@" = available_externally dllimport unnamed_addr constant [1 x i8*] [i8* bitcast (void (%struct.W*)* @"\01?foo@W@@UAEXXZ" to i8*)] +// MO1-DAG: @"\01??_SW@@6B@" = linkonce_odr unnamed_addr constant [1 x i8*] [i8* bitcast (void (%struct.W*)* @"\01?foo@W@@UAEXXZ" to i8*)] // GO1-DAG: @_ZTV1W = available_externally dllimport unnamed_addr constant [3 x i8*] [i8* null, i8* null, i8* bitcast (void (%struct.W*)* @_ZN1W3fooEv to i8*)] struct __declspec(dllimport) KeyFuncClass { |