summaryrefslogtreecommitdiffstats
path: root/clang/test/ASTMerge
diff options
context:
space:
mode:
authorGabor Marton <martongabesz@gmail.com>2018-06-26 13:44:24 +0000
committerGabor Marton <martongabesz@gmail.com>2018-06-26 13:44:24 +0000
commit5915777eca88a8c14c58869219aa6fe1543a70b5 (patch)
tree5175c18c841ff3b80e7fa4c8f493c9918a740c5b /clang/test/ASTMerge
parent04803b3ef2cf327166a65c7f8a7804a2b93e6d2f (diff)
downloadbcm5719-llvm-5915777eca88a8c14c58869219aa6fe1543a70b5.tar.gz
bcm5719-llvm-5915777eca88a8c14c58869219aa6fe1543a70b5.zip
[ASTImporter] Use InjectedClassNameType at import of templated record.
Summary: At import of a record describing a template set its type to InjectedClassNameType (instead of RecordType). Reviewers: a.sidorin, martong, r.stahl Reviewed By: a.sidorin, martong, r.stahl Subscribers: a_sidorin, rnkovacs, martong, cfe-commits Differential Revision: https://reviews.llvm.org/D47450 Patch by Balazs Keri! llvm-svn: 335600
Diffstat (limited to 'clang/test/ASTMerge')
-rw-r--r--clang/test/ASTMerge/injected-class-name-decl/Inputs/inject1.cpp2
-rw-r--r--clang/test/ASTMerge/injected-class-name-decl/Inputs/inject2.cpp2
-rw-r--r--clang/test/ASTMerge/injected-class-name-decl/test.cpp3
3 files changed, 7 insertions, 0 deletions
diff --git a/clang/test/ASTMerge/injected-class-name-decl/Inputs/inject1.cpp b/clang/test/ASTMerge/injected-class-name-decl/Inputs/inject1.cpp
new file mode 100644
index 00000000000..f6f769746d1
--- /dev/null
+++ b/clang/test/ASTMerge/injected-class-name-decl/Inputs/inject1.cpp
@@ -0,0 +1,2 @@
+template <class X>
+class C { static X x; };
diff --git a/clang/test/ASTMerge/injected-class-name-decl/Inputs/inject2.cpp b/clang/test/ASTMerge/injected-class-name-decl/Inputs/inject2.cpp
new file mode 100644
index 00000000000..7cf5fc22328
--- /dev/null
+++ b/clang/test/ASTMerge/injected-class-name-decl/Inputs/inject2.cpp
@@ -0,0 +1,2 @@
+template <class X>
+X C<X>::x;
diff --git a/clang/test/ASTMerge/injected-class-name-decl/test.cpp b/clang/test/ASTMerge/injected-class-name-decl/test.cpp
new file mode 100644
index 00000000000..9f31674108a
--- /dev/null
+++ b/clang/test/ASTMerge/injected-class-name-decl/test.cpp
@@ -0,0 +1,3 @@
+// RUN: %clang_cc1 -std=c++1z -emit-pch -o %t.ast %S/Inputs/inject1.cpp
+// RUN: %clang_cc1 -std=c++1z -emit-obj -o /dev/null -ast-merge %t.ast %S/Inputs/inject2.cpp
+// expected-no-diagnostics
OpenPOWER on IntegriCloud