forked from OSchip/llvm-project
Fix pluralization error in diagnostic, and move C++ testcase to proper
directory.
This commit is contained in:
parent
eabd55b1b2
commit
1705136590
|
@ -8390,7 +8390,7 @@ def warn_bad_function_cast : Warning<
|
|||
"cast from function call of type %0 to non-matching type %1">,
|
||||
InGroup<BadFunctionCast>, DefaultIgnore;
|
||||
def warn_cast_function_type : Warning<
|
||||
"cast from %0 to %1 converts to incompatible function types">,
|
||||
"cast %diff{from $ to $ |}0,1converts to incompatible function type">,
|
||||
InGroup<CastFunctionType>, DefaultIgnore;
|
||||
def err_cast_pointer_to_non_pointer_int : Error<
|
||||
"pointer cannot be cast to type %0">;
|
||||
|
|
|
@ -20,10 +20,10 @@ f7 *g;
|
|||
|
||||
void foo(void) {
|
||||
a = (f1 *)x;
|
||||
b = (f2 *)x; /* expected-warning {{cast from 'int (*)(long)' to 'f2 *' (aka 'int (*)(void *)') converts to incompatible function types}} */
|
||||
b = (f2 *)x; /* expected-warning {{cast from 'int (*)(long)' to 'f2 *' (aka 'int (*)(void *)') converts to incompatible function type}} */
|
||||
c = (f3 *)x;
|
||||
d = (f4 *)x; /* expected-warning {{cast from 'int (*)(long)' to 'f4 *' (aka 'void (*)()') converts to incompatible function types}} */
|
||||
d = (f4 *)x; /* expected-warning {{cast from 'int (*)(long)' to 'f4 *' (aka 'void (*)()') converts to incompatible function type}} */
|
||||
e = (f5 *)x;
|
||||
f = (f6 *)x; /* expected-warning {{cast from 'int (*)(long)' to 'f6 *' (aka 'int (*)(long, int)') converts to incompatible function types}} */
|
||||
f = (f6 *)x; /* expected-warning {{cast from 'int (*)(long)' to 'f6 *' (aka 'int (*)(long, int)') converts to incompatible function type}} */
|
||||
g = (f7 *)x;
|
||||
}
|
||||
|
|
|
@ -29,19 +29,19 @@ typedef void (S::*mf)(int);
|
|||
|
||||
void foo() {
|
||||
a = (f1 *)x;
|
||||
b = (f2 *)x; /* expected-warning {{cast from 'int (*)(long)' to 'f2 *' (aka 'int (*)(void *)') converts to incompatible function types}} */
|
||||
b = reinterpret_cast<f2 *>(x); /* expected-warning {{cast from 'int (*)(long)' to 'f2 *' (aka 'int (*)(void *)') converts to incompatible function types}} */
|
||||
b = (f2 *)x; /* expected-warning {{cast from 'int (*)(long)' to 'f2 *' (aka 'int (*)(void *)') converts to incompatible function type}} */
|
||||
b = reinterpret_cast<f2 *>(x); /* expected-warning {{cast from 'int (*)(long)' to 'f2 *' (aka 'int (*)(void *)') converts to incompatible function type}} */
|
||||
c = (f3 *)x;
|
||||
d = (f4 *)x; /* expected-warning {{cast from 'int (*)(long)' to 'f4 *' (aka 'void (*)(...)') converts to incompatible function types}} */
|
||||
d = (f4 *)x; /* expected-warning {{cast from 'int (*)(long)' to 'f4 *' (aka 'void (*)(...)') converts to incompatible function type}} */
|
||||
e = (f5 *)x;
|
||||
f = (f6 *)x; /* expected-warning {{cast from 'int (*)(long)' to 'f6 *' (aka 'int (*)(long, int)') converts to incompatible function types}} */
|
||||
f = (f6 *)x; /* expected-warning {{cast from 'int (*)(long)' to 'f6 *' (aka 'int (*)(long, int)') converts to incompatible function type}} */
|
||||
g = (f7 *)x;
|
||||
|
||||
mf p1 = (mf)&S::foo; /* expected-warning {{cast from 'void (S::*)(int *)' to 'mf' (aka 'void (S::*)(int)') converts to incompatible function types}} */
|
||||
mf p1 = (mf)&S::foo; /* expected-warning {{cast from 'void (S::*)(int *)' to 'mf' (aka 'void (S::*)(int)') converts to incompatible function type}} */
|
||||
|
||||
f8 f2 = (f8)x; /* expected-warning {{cast from 'int (long)' to 'f8' (aka 'int (&)(long, int)') converts to incompatible function types}} */
|
||||
f8 f2 = (f8)x; /* expected-warning {{cast from 'int (long)' to 'f8' (aka 'int (&)(long, int)') converts to incompatible function type}} */
|
||||
(void)f2;
|
||||
|
||||
int (^y)(long);
|
||||
f = (f6 *)y; /* expected-warning {{cast from 'int (^)(long)' to 'f6 *' (aka 'int (*)(long, int)') converts to incompatible function types}} */
|
||||
f = (f6 *)y; /* expected-warning {{cast from 'int (^)(long)' to 'f6 *' (aka 'int (*)(long, int)') converts to incompatible function type}} */
|
||||
}
|
Loading…
Reference in New Issue