Mercurial > hg > CbC > CbC_llvm
comparison clang/test/SemaTemplate/array-redeclaration.cpp @ 150:1d019706d866
LLVM10
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 15:10:13 +0900 |
parents | |
children | 2e18cbf3894f |
comparison
equal
deleted
inserted
replaced
147:c2174574ed3a | 150:1d019706d866 |
---|---|
1 // RUN: %clang_cc1 -fsyntax-only -verify %s | |
2 // expected-no-diagnostics | |
3 | |
4 extern int array[1]; | |
5 | |
6 template <typename> | |
7 class C { | |
8 enum { D }; | |
9 public: | |
10 template <typename A> void foo1() { | |
11 extern int array[((int)C<A>::k > (int)D) ? 1 : -1]; | |
12 } | |
13 }; | |
14 | |
15 template<> | |
16 class C<int> { | |
17 public: | |
18 const static int k = 2; | |
19 }; | |
20 | |
21 void foo2() { | |
22 C<char> c; | |
23 c.foo1<int>(); | |
24 } | |
25 | |
26 template<int n> | |
27 void foo3() { | |
28 extern int array[n ? 1 : -1]; | |
29 } | |
30 | |
31 void foo4() { | |
32 foo3<5>(); | |
33 } |