From d7115a81b1a70db1652a7b518dbdaefa3bb6b3fd Mon Sep 17 00:00:00 2001 From: Douglas Gregor Date: Thu, 1 Jul 2010 00:21:50 +0000 Subject: [PATCH] Add test case that I forgot to commit with r107354 (the implementation of C++ DR481). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107359 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../basic/basic.scope/basic.scope.pdecl/p9.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 test/CXX/basic/basic.scope/basic.scope.pdecl/p9.cpp diff --git a/test/CXX/basic/basic.scope/basic.scope.pdecl/p9.cpp b/test/CXX/basic/basic.scope/basic.scope.pdecl/p9.cpp new file mode 100644 index 0000000000..e64b6752f0 --- /dev/null +++ b/test/CXX/basic/basic.scope/basic.scope.pdecl/p9.cpp @@ -0,0 +1,18 @@ +// RUN: %clang_cc1 -fsyntax-only -verify %s + +// Template type parameters. +typedef unsigned char T; +template struct X0 { }; +template<> struct X0 { static const bool value = true; }; +int array0[X0<>::value? 1 : -1]; + +// Non-type template parameters. +const int N = 17; +template struct X1 { }; +template<> struct X1<17> { static const bool value = true; }; +int array1[X1<>::value? 1 : -1]; + +// Template template parameters. +template class X0 = X0> struct X2 { }; +template<> struct X2 { static const bool value = true; }; +int array2[X2<>::value? 1 : -1]; -- 2.40.0