1 // RUN: %clang_cc1 -fsyntax-only -verify %s
6 enum T::X v
; // expected-error{{use of 'X' with tag type that does not match previous declaration}} \
7 // expected-error{{no enum named 'X' in 'PR6915::D3'}}
14 class X
{ }; // expected-note{{previous use is here}}
19 template class D
<D2
>; // expected-note{{in instantiation of}}
20 template class D
<D3
>; // expected-note{{in instantiation of}}
25 enum T::foo
; // expected-error{{nested name specifier for a declaration cannot depend on a template parameter}}
26 enum T::bar
{ // expected-error{{nested name specifier for a declaration cannot depend on a template parameter}}
32 template <typename T
> struct foo
{
33 class T::bar
; // expected-error{{nested name specifier for a declaration cannot depend on a template parameter}}
34 class T::bar
{ int x
; }; // expected-error{{nested name specifier for a declaration cannot depend on a template parameter}}
38 namespace rdar8568507
{
39 template <class T
> struct A
*makeA(T t
);