phunix/external/bsd/llvm/dist/clang/test/Parser/colon-colon-parentheses.cpp
Lionel Sambuc 0a6a1f1d05 NetBSD re-synchronization of the source tree
This brings our tree to NetBSD 7.0, as found on -current on the
10-10-2015.

This updates:
 - LLVM to 3.6.1
 - GCC to GCC 5.1
 - Replace minix/commands/zdump with usr.bin/zdump
 - external/bsd/libelf has moved to /external/bsd/elftoolchain/
 - Import ctwm
 - Drop sprintf from libminc

Change-Id: I149836ac18e9326be9353958bab9b266efb056f0
2016-01-13 20:32:14 +01:00

31 lines
1.0 KiB
C++

// RUN: %clang_cc1 %s -fsyntax-only -verify -DPR21815
// RUN: cp %s %t
// RUN: not %clang_cc1 -x c++ -fixit %t
// RUN: %clang_cc1 -x c++ %t
struct S { static int a,b,c;};
int S::(a); // expected-error{{unexpected parenthesis after '::'}}
int S::(b; // expected-error{{unexpected parenthesis after '::'}}
int S::c;
int S::(*d); // expected-error{{unexpected parenthesis after '::'}}
int S::(*e; // expected-error{{unexpected parenthesis after '::'}}
int S::*f;
int g = S::(a); // expected-error{{unexpected parenthesis after '::'}}
int h = S::(b; // expected-error{{unexpected parenthesis after '::'}}
int i = S::c;
void foo() {
int a;
a = ::(g); // expected-error{{unexpected parenthesis after '::'}}
a = ::(h; // expected-error{{unexpected parenthesis after '::'}}
a = ::i;
}
#ifdef PR21815
// expected-error@+4{{C++ requires a type specifier for all declarations}}
// expected-error@+3{{expected unqualified-id}}
// expected-error@+3{{expected expression}}
// expected-error@+1{{expected ';' after top level declarator}}
a (::(
#endif