def warn_multiple_method_decl : Warning<"multiple methods named %0 found">;
def warn_accessor_property_type_mismatch : Warning<
"type of property %0 does not match type of accessor %1">;
-def note_declared_at : Note<"declared at">;
+def note_declared_at : Note<"declared here">;
def err_setter_type_void : Error<"type of setter must be void">;
def err_duplicate_method_decl : Error<"duplicate declaration of method %0">;
def warn_missing_atend : Warning<"'@end' is missing in implementation context">;
template <class T> struct C : A<T> {
using typename A<T>::type;
- using typename A<T>::hiding; // expected-note {{declared at}} \
+ using typename A<T>::hiding; // expected-note {{declared here}} \
// expected-error {{'typename' keyword used on a non-type}}
using typename A<T>::union_member; // expected-error {{'typename' keyword used on a non-type}}
using typename A<T>::enumerator; // expected-error {{'typename' keyword used on a non-type}}
// radr://7438948
void test20() {
int n = 7;
- int vla[n]; // expected-note {{declared at}}
- int (*vm)[n] = 0; // expected-note {{declared at}}
+ int vla[n]; // expected-note {{declared here}}
+ int (*vm)[n] = 0; // expected-note {{declared here}}
vla[1] = 4341;
^{
(void)vla[1]; // expected-error {{cannot refer to declaration with a variably modified type inside block}}
// radr://7438948
void test21() {
- int a[7]; // expected-note {{declared at}}
- __block int b[10]; // expected-note {{declared at}}
+ int a[7]; // expected-note {{declared here}}
+ __block int b[10]; // expected-note {{declared here}}
a[1] = 1;
^{
(void)a[1]; // expected-error {{cannot refer to declaration with an array type inside block}}
class Base { // expected-error {{cannot define the implicit default assignment operator for 'Base', because non-static reference member 'ref' can't use default assignment operator}} \
// expected-warning{{class 'Base' does not declare any constructor to initialize its non-modifiable members}}
- int &ref; // expected-note {{declared at}} \
+ int &ref; // expected-note {{declared here}} \
// expected-note{{reference member 'ref' will never be initialized}}
};
class X : Base { // // expected-error {{cannot define the implicit default assignment operator for 'X', because non-static const member 'cint' can't use default assignment operator}}
public:
X();
- const int cint; // expected-note {{declared at}}
+ const int cint; // expected-note {{declared here}}
};
struct Y : X {
class E1 { // expected-error{{cannot define the implicit default assignment operator for 'E1', because non-static const member 'a' can't use default assignment operator}}
public:
- const int a; // expected-note{{declared at}}
+ const int a; // expected-note{{declared here}}
E1() : a(0) {}
};
struct X4 { // expected-error {{must explicitly initialize the member 'x2'}} \
// expected-error {{must explicitly initialize the reference member 'rx2'}}
X2 x2; // expected-note {{member is declared here}}
- X2 & rx2; // expected-note {{declared at}}
+ X2 & rx2; // expected-note {{declared here}}
};
X4 x4; // expected-note {{first required here}}
struct Z1 { // expected-error {{must explicitly initialize the reference member 'z'}} \
// expected-error {{must explicitly initialize the const member 'c1'}}
- int& z; // expected-note {{declared at}}
- const int c1; // expected-note {{declared at}}
+ int& z; // expected-note {{declared here}}
+ const int c1; // expected-note {{declared here}}
volatile int v1;
};
// expected-error {{constructor for 'X' must explicitly initialize the const member 'cvalue'}} \
// expected-error {{constructor for 'X' must explicitly initialize the reference member 'b'}} \
// expected-error {{constructor for 'X' must explicitly initialize the const member 'cb'}}
- int &value; // expected-note{{declared at}}
- const int cvalue; // expected-note{{declared at}}
- B& b; // expected-note{{declared at}}
- const B cb; // expected-note{{declared at}}
+ int &value; // expected-note{{declared here}}
+ const int cvalue; // expected-note{{declared here}}
+ B& b; // expected-note{{declared here}}
+ const B cb; // expected-note{{declared here}}
};
struct AX {
- AX& operator ->(); // expected-note {{declared at}}
+ AX& operator ->(); // expected-note {{declared here}}
int b;
};
}
struct CircA {
- struct CircB& operator->(); // expected-note {{declared at}}
+ struct CircB& operator->(); // expected-note {{declared here}}
int val;
};
struct CircB {
- struct CircC& operator->(); // expected-note {{declared at}}
+ struct CircC& operator->(); // expected-note {{declared here}}
};
struct CircC {
- struct CircA& operator->(); // expected-note {{declared at}}
+ struct CircA& operator->(); // expected-note {{declared here}}
};
void circ() {
struct A { // expected-error {{implicit default constructor for 'A' must explicitly initialize the const member 'i'}} \
// expected-warning{{struct 'A' does not declare any constructor to initialize its non-modifiable members}}
- const int i; // expected-note {{declared at}} \
+ const int i; // expected-note {{declared here}} \
// expected-note{{const member 'i' will never be initialized}}
virtual void f() { }
};
// RUN: %clang_cc1 -fsyntax-only -verify %s
@interface A
--(float) x; // expected-note {{declared at}}
+-(float) x; // expected-note {{declared here}}
@property int x; // expected-warning {{type of property 'x' does not match type of accessor 'x'}}
@end
@class SSyncSet_iDisk;
@interface SPeer_iDisk_remote1 : SPeer
-- (SSyncSet_iDisk*) syncSet; // expected-note {{declared at}}
+- (SSyncSet_iDisk*) syncSet; // expected-note {{declared here}}
@end
@interface SPeer_iDisk_local
@property (readonly) NSArray* pieces; // expected-warning {{type of property 'pieces' does not match type of accessor 'pieces'}}
@property (readonly) NSMutableArray* first;
-- (NSMutableArray*) pieces; // expected-note {{declared at}} // expected-note {{declared at}}
+- (NSMutableArray*) pieces; // expected-note {{declared here}} // expected-note {{declared here}}
- (NSArray*) first;
@end