blob: 4453c4c3d0d23187dc97d5eb0155c79cabafabb0 [file] [log] [blame]
Chris Lattner8129edb2009-04-12 22:23:27 +00001// RUN: clang-cc -verify -fsyntax-only %s
2
3int x(*g); // expected-error {{use of undeclared identifier 'g'}}
Chris Lattner46646492009-12-07 01:36:53 +00004
Chris Lattnera1efc8c2009-12-10 01:59:24 +00005struct Type { };
6
Chris Lattner46646492009-12-07 01:36:53 +00007
8// PR4451 - We should recover well from the typo of '::' as ':' in a2.
9namespace y {
10 struct a { };
11}
12
13y::a a1;
14y:a a2; // expected-error {{unexpected ':' in nested name specifier}}
15y::a a3 = a2;
16
17// Some valid colons:
18void foo() {
19y: // label
20 y::a s;
21
22 int a = 4;
23 a = a ? a : a+1;
24}
25
26struct b : y::a {};
27
28template <typename T>
29class someclass {
30
31 int bar() {
32 T *P;
33 return 1 ? P->x : P->y;
34 }
35};
Chris Lattnera1efc8c2009-12-10 01:59:24 +000036
37enum { fooenum = 1 };
38
39struct a {
40 int Type : fooenum;
41};
42