forked from OSchip/llvm-project
26 lines
1.3 KiB
C
26 lines
1.3 KiB
C
_Complex cd; // CHECK: code-complete-errors.c:1:1: warning: plain '_Complex' requires a type specifier; assuming '_Complex double'
|
|
// CHECK: FIX-IT: Insert " double" at 1:9
|
|
struct s {
|
|
int x, y;; // CHECK: code-complete-errors.c:4:12: warning: extra ';' inside a struct
|
|
}; // CHECK: FIX-IT: Remove [4:12 - 4:13]
|
|
|
|
struct s s0 = { y: 5 }; // CHECK: code-complete-errors.c:7:20: warning: use of GNU old-style field designator extension
|
|
// CHECK: FIX-IT: Replace [7:17 - 7:19] with ".y = "
|
|
int f(int *ptr1, float *ptr2) {
|
|
return ptr1 != ptr2; // CHECK: code-complete-errors.c:10:15:{10:10-10:14}{10:18-10:22}: warning: comparison of distinct pointer types ('int *' and 'float *')
|
|
}
|
|
|
|
#define expand_to_binary_function(ret, name, parm1, parm2, code) ret name(parm1, parm2) code
|
|
|
|
expand_to_binary_function(int, g, int *ip, float *fp, {
|
|
// CHECK: code-complete-errors.c:17:12:{17:9-17:24}: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
|
|
if (ip = (float*)fp) ;
|
|
// CHECK: code-complete-errors.c:19:15:{19:12-19:14}{19:18-19:20}: warning: comparison of distinct pointer types ('int *' and 'float *')
|
|
return ip == fp;
|
|
})
|
|
|
|
void g() { }
|
|
|
|
// RUN: c-index-test -code-completion-at=%s:21:12 -pedantic %s 2> %t
|
|
// RUN: FileCheck -check-prefix=CHECK %s < %t
|