1 // RUN: %clang_cc1 -fsyntax-only -verify %s
8 void Case(const char (&S
)[N
], const int & Value
) {
12 void test_stringswitch(int argc
, char *argv
[]) {
13 (void)StringSwitch
<int>();
17 template<class Class
,typename Type
,Type
Class::*>
18 struct non_const_member_base
22 template<class Class
,typename Type
,Type
Class::*PtrToMember
>
23 struct member
: non_const_member_base
<Class
,Type
,PtrToMember
>
31 typedef member
< test_class
,const int,&test_class::int_member
> ckey_m
;
38 namespace rdar8980215
{
39 enum E
{ E1
, E2
, E3
};
41 template<typename T
, E e
= E2
>
44 template<typename U
> X0(const X0
<U
, e
> &);
50 template<typename U
> X1(const X1
<U
> &x
) : X0
<T
>(x
) { }