1f51a89d39
These were ignored by git accidentally. We want ALL OF THEM since they all came in the llvm/clang source distribution.
25 lines
583 B
C++
25 lines
583 B
C++
// RUN: %clang_cc1 -fsyntax-only -std=c++11 -verify %s
|
|
template<typename T> struct X;
|
|
template<int I> struct Y;
|
|
|
|
X<X<int>> *x1;
|
|
|
|
Y<(1 >> 2)> *y1;
|
|
Y<1 >> 2> *y2; // FIXME: expected-error{{expected unqualified-id}}
|
|
|
|
X<X<X<X<X<int>>>>> *x2;
|
|
|
|
template<> struct X<int> { };
|
|
typedef X<int> X_int;
|
|
struct Z : X_int { };
|
|
|
|
void f(const X<int> x) {
|
|
(void)reinterpret_cast<X<int>>(x); // expected-error{{reinterpret_cast from}}
|
|
(void)reinterpret_cast<X<X<X<int>>>>(x); // expected-error{{reinterpret_cast from}}
|
|
|
|
X<X<int>> *x1;
|
|
}
|
|
|
|
template<typename T = void> struct X1 { };
|
|
X1<X1<>> x1a;
|