]> granicus.if.org Git - clang/commitdiff
Some of this test doesn't want -std=c++11
authorDavid Majnemer <david.majnemer@gmail.com>
Wed, 28 Aug 2013 00:13:42 +0000 (00:13 +0000)
committerDavid Majnemer <david.majnemer@gmail.com>
Wed, 28 Aug 2013 00:13:42 +0000 (00:13 +0000)
Sorry for the churn.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189429 91177308-0d34-0410-b5e6-96231b3b80d8

test/SemaTemplate/temp_arg_template.cpp

index 0833fdf83a2e3601f997f34a21976d6120195402..2053b7978dbeae07cebd1219fd8f12af129e5210 100644 (file)
@@ -1,3 +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}}
@@ -31,7 +32,9 @@ 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}} \
@@ -56,11 +59,12 @@ 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>
 struct template_tuple {};
 template <typename T>
@@ -71,3 +75,4 @@ template_tuple<Templates...> f7() {}
 void foo() {
   f7<identity>();
 }
+#endif