aboutsummaryrefslogtreecommitdiff
path: root/test/Modules
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2015-06-09 19:08:19 +0000
committerDimitry Andric <dim@FreeBSD.org>2015-06-09 19:08:19 +0000
commit798321d8eb5630cd4a8f490a4f25e32ef195fb07 (patch)
treea59f5569ef36d00388c0428426abef26aa9105b6 /test/Modules
parent5e20cdd81c44a443562a09007668ffdf76c455af (diff)
downloadsrc-798321d8eb5630cd4a8f490a4f25e32ef195fb07.tar.gz
src-798321d8eb5630cd4a8f490a4f25e32ef195fb07.zip
Vendor import of clang trunk r239412:vendor/clang/clang-trunk-r239412
Notes
Notes: svn path=/vendor/clang/dist/; revision=284186 svn path=/vendor/clang/clang-trunk-r239412/; revision=284187; tag=vendor/clang/clang-trunk-r239412
Diffstat (limited to 'test/Modules')
-rw-r--r--test/Modules/Inputs/template-default-args/a.h4
-rw-r--r--test/Modules/Inputs/template-default-args/b.h0
-rw-r--r--test/Modules/Inputs/template-default-args/module.modulemap1
-rw-r--r--test/Modules/template-default-args.cpp22
4 files changed, 27 insertions, 0 deletions
diff --git a/test/Modules/Inputs/template-default-args/a.h b/test/Modules/Inputs/template-default-args/a.h
new file mode 100644
index 000000000000..1ef1ea5907b5
--- /dev/null
+++ b/test/Modules/Inputs/template-default-args/a.h
@@ -0,0 +1,4 @@
+template<typename T = int> struct A {};
+template<typename T> struct B {};
+template<typename T> struct C;
+template<typename T> struct D;
diff --git a/test/Modules/Inputs/template-default-args/b.h b/test/Modules/Inputs/template-default-args/b.h
new file mode 100644
index 000000000000..e69de29bb2d1
--- /dev/null
+++ b/test/Modules/Inputs/template-default-args/b.h
diff --git a/test/Modules/Inputs/template-default-args/module.modulemap b/test/Modules/Inputs/template-default-args/module.modulemap
new file mode 100644
index 000000000000..6182e6b3eee1
--- /dev/null
+++ b/test/Modules/Inputs/template-default-args/module.modulemap
@@ -0,0 +1 @@
+module X { module A { header "a.h" } module B { header "b.h" } }
diff --git a/test/Modules/template-default-args.cpp b/test/Modules/template-default-args.cpp
new file mode 100644
index 000000000000..63187b8dc190
--- /dev/null
+++ b/test/Modules/template-default-args.cpp
@@ -0,0 +1,22 @@
+// RUN: rm -rf %t
+// RUN: %clang_cc1 -fmodules -verify -fmodules-cache-path=%t -I %S/Inputs/template-default-args -std=c++11 %s
+//
+// expected-no-diagnostics
+
+template<typename T> struct A;
+template<typename T> struct B;
+template<typename T> struct C;
+template<typename T = int> struct D;
+
+#include "b.h"
+
+template<typename T = int> struct A {};
+template<typename T> struct B {};
+template<typename T = int> struct B;
+template<typename T = int> struct C;
+template<typename T> struct D {};
+
+A<> a;
+B<> b;
+extern C<> c;
+D<> d;