comparison clang/test/SemaTemplate/instantiate-deeply.cpp @ 150:1d019706d866

LLVM10
author anatofuz
date Thu, 13 Feb 2020 15:10:13 +0900
parents
children
comparison
equal deleted inserted replaced
147:c2174574ed3a 150:1d019706d866
1 // RUN: %clang_cc1 -fsyntax-only -Wall -verify %s
2 // expected-no-diagnostics
3 template<typename a> struct A {
4 template <typename b> struct B {
5 template <typename c> struct C {
6 template <typename d> struct D {
7 template <typename e> struct E {
8 e field;
9 E() : field(0) {
10 d v1 = 4;
11 c v2 = v1 * v1;
12 b v3 = 8;
13 a v4 = v3 * v3;
14 field += v2 + v4;
15 }
16 };
17 };
18 };
19 };
20 };
21
22 A<int>::B<int>::C<int>::D<int>::E<int> global;
23
24 // PR5352
25 template <typename T>
26 class Foo {
27 public:
28 Foo() {}
29
30 struct Bar {
31 T value;
32 };
33
34 Bar u;
35 };
36
37 template class Foo<int>;