diff options
author | David Majnemer <david.majnemer@gmail.com> | 2013-08-28 05:45:53 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2013-08-28 05:45:53 +0000 |
commit | 8a0caa8525f23b3661dbd8ff26826d05814f3a6d (patch) | |
tree | d85ddd237886407fab092eceb496c75178f48155 /clang/test/SemaTemplate/temp_arg_template.cpp | |
parent | 80655be83ff5930b66893da2c0f2f28b75737da0 (diff) | |
download | bcm5719-llvm-8a0caa8525f23b3661dbd8ff26826d05814f3a6d.tar.gz bcm5719-llvm-8a0caa8525f23b3661dbd8ff26826d05814f3a6d.zip |
Richard makes a good point, clean up this test.
llvm-svn: 189444
Diffstat (limited to 'clang/test/SemaTemplate/temp_arg_template.cpp')
-rw-r--r-- | clang/test/SemaTemplate/temp_arg_template.cpp | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/clang/test/SemaTemplate/temp_arg_template.cpp b/clang/test/SemaTemplate/temp_arg_template.cpp index 2053b7978db..dec5dd37d48 100644 --- a/clang/test/SemaTemplate/temp_arg_template.cpp +++ b/clang/test/SemaTemplate/temp_arg_template.cpp @@ -1,5 +1,4 @@ // RUN: %clang_cc1 -fsyntax-only -verify %s -// RUN: %clang_cc1 -fsyntax-only -verify -std=c++11 %s template<template<typename T> class X> struct A; // expected-note 2{{previous template template parameter is here}} @@ -32,9 +31,7 @@ template<typename T> void f(int); A<f> *a9; // expected-error{{must be a class template}} // Evil digraph '<:' is parsed as '[', expect error. -#if __cplusplus < 201103 A<::N::Z> *a10; // expected-error{{found '<::' after a template name which forms the digraph '<:' (aka '[') and a ':', did you mean '< ::'?}} -#endif // Do not do a digraph correction here. A<: :N::Z> *a11; // expected-error{{expected expression}} \ @@ -59,20 +56,18 @@ namespace N { } // PR12179 -#if __cplusplus < 201103 template <typename Primitive, template <Primitive...> class F> // expected-warning {{variadic templates are a C++11 extension}} struct unbox_args { typedef typename Primitive::template call<F> x; }; -#else -template <template <typename> class... Templates> + +template <template <typename> class... Templates> // expected-warning {{variadic templates are a C++11 extension}} struct template_tuple {}; template <typename T> struct identity {}; -template <template <typename> class... Templates> +template <template <typename> class... Templates> // expected-warning {{variadic templates are a C++11 extension}} template_tuple<Templates...> f7() {} void foo() { f7<identity>(); } -#endif |