diff options
Diffstat (limited to 'clang/test/CodeGenCXX/debug-info-dllimport-base-class.cpp')
-rw-r--r-- | clang/test/CodeGenCXX/debug-info-dllimport-base-class.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/clang/test/CodeGenCXX/debug-info-dllimport-base-class.cpp b/clang/test/CodeGenCXX/debug-info-dllimport-base-class.cpp index dc15dd07f96..855ecaaa4c9 100644 --- a/clang/test/CodeGenCXX/debug-info-dllimport-base-class.cpp +++ b/clang/test/CodeGenCXX/debug-info-dllimport-base-class.cpp @@ -4,6 +4,10 @@ // be imported from a DLL. Otherwise, the debugger wouldn't be able to show the // members. +// CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "ImportedAfterCompletion", +// CHECK-NOT: DIFlagFwdDecl +// CHECK-SAME: ){{$}} + // CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "OutOfLineCtor", // CHECK-SAME: DIFlagFwdDecl // CHECK-SAME: ){{$}} @@ -16,6 +20,13 @@ // CHECK-NOT: DIFlagFwdDecl // CHECK-SAME: ){{$}} + +struct ImportedAfterCompletion; +ImportedAfterCompletion *force_fwd_decl; +struct __declspec(dllimport) ImportedAfterCompletion { + virtual ~ImportedAfterCompletion(); +}; + struct OutOfLineCtor { OutOfLineCtor(); virtual void Foo(); @@ -35,6 +46,7 @@ struct ImportedMethod { }; int main() { + ImportedAfterCompletion c; OutOfLineCtor o; DerivedFromImported d; ImportedMethod m; |