summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/injected-class-name-crash.cpp
diff options
context:
space:
mode:
authorIlya Biryukov <ibiryukov@google.com>2018-07-04 08:50:12 +0000
committerIlya Biryukov <ibiryukov@google.com>2018-07-04 08:50:12 +0000
commita2d582563dcbefdca27c3fa23541438fb1830504 (patch)
tree0eb7ea5e4460cd485100e06fab175cbb5e8b6870 /clang/test/SemaCXX/injected-class-name-crash.cpp
parentab38eb29cf0c98eed9b91bc34fda051af0ab7def (diff)
downloadbcm5719-llvm-a2d582563dcbefdca27c3fa23541438fb1830504.tar.gz
bcm5719-llvm-a2d582563dcbefdca27c3fa23541438fb1830504.zip
[Sema] Fix crash in getConstructorName.
Summary: Can happen when getConstructorName is called on invalid decls, specifically the ones that do not have the injected class name. Reviewers: bkramer, rsmith Reviewed By: rsmith Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D48880 llvm-svn: 336244
Diffstat (limited to 'clang/test/SemaCXX/injected-class-name-crash.cpp')
-rw-r--r--clang/test/SemaCXX/injected-class-name-crash.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/injected-class-name-crash.cpp b/clang/test/SemaCXX/injected-class-name-crash.cpp
new file mode 100644
index 00000000000..2996a7cdb48
--- /dev/null
+++ b/clang/test/SemaCXX/injected-class-name-crash.cpp
@@ -0,0 +1,11 @@
+// RUN: %clang_cc1 -fsyntax-only -verify %s
+
+template <class T>
+struct X : public Foo<Bar { // expected-error {{unknown template name 'Foo'}} expected-error {{use of undeclared identifier 'Bar'}}
+ X();
+}; // expected-error {{expected '{' after base class list}}
+
+
+template <class T>
+X<T>::X() {
+}
OpenPOWER on IntegriCloud