blob: 4fe213eca65e039308dea66e7c0f7c5051b690c0 [file] [log] [blame]
Douglas Gregord93256e2010-01-28 06:00:51 +00001_Complex cd; // CHECK: code-complete-errors.c:1:1: warning: plain '_Complex' requires a type specifier; assuming '_Complex double'
Douglas Gregor51c6d382010-01-29 00:41:11 +00002// CHECK: FIX-IT: Insert " double" at 1:9
Douglas Gregord93256e2010-01-28 06:00:51 +00003struct s {
Douglas Gregorf13ca062010-06-16 23:08:59 +00004 int x, y;; // CHECK: code-complete-errors.c:4:12: warning: extra ';' inside a struct
Daniel Dunbar51b058c2010-02-14 08:32:24 +00005}; // CHECK: FIX-IT: Remove [4:12 - 4:13]
Douglas Gregord93256e2010-01-28 06:00:51 +00006
7struct s s0 = { y: 5 }; // CHECK: code-complete-errors.c:7:20: warning: use of GNU old-style field designator extension
Daniel Dunbar51b058c2010-02-14 08:32:24 +00008// CHECK: FIX-IT: Replace [7:17 - 7:19] with ".y = "
Douglas Gregord93256e2010-01-28 06:00:51 +00009int f(int *ptr1, float *ptr2) {
Douglas Gregor0a812cf2010-02-18 23:07:20 +000010 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 *')
Douglas Gregord93256e2010-01-28 06:00:51 +000011}
12
Douglas Gregorb6278712010-11-09 05:28:47 +000013#define expand_to_binary_function(ret, name, parm1, parm2, code) ret name(parm1, parm2) code
14
15expand_to_binary_function(int, g, int *ip, float *fp, {
16// CHECK: code-complete-errors.c:17:15:{17:12-17:14}{17:18-17:20}: warning: comparison of distinct pointer types ('int *' and 'float *')
17 return ip == fp;
18 })
19
Douglas Gregord93256e2010-01-28 06:00:51 +000020void g() { }
21
Douglas Gregorb6278712010-11-09 05:28:47 +000022// RUN: c-index-test -code-completion-at=%s:19:12 -pedantic %s 2> %t
Douglas Gregord93256e2010-01-28 06:00:51 +000023// RUN: FileCheck -check-prefix=CHECK %s < %t