aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/validation/preprocessor/directive-within-macro.c
blob: 5269d4a72c628671b2b9a648051ab605335e2bde (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#define f(x) x

f(1
#if 1		// OK
  a
#elif 2		// OK
  b
#else		// OK
  c
#endif		// OK
#ifdef f	// OK
  d
#endif		// OK
#ifndef f	// OK
  e
#endif		// OK
  3)

f(1
#define x y	// KO
  3)

/*
 * check-name: directive-within-macro
 * check-command: sparse -E $file
 *
 * check-output-start

1
a
d
3
1
3
 * check-output-end
 *
 * check-error-start
preprocessor/directive-within-macro.c:20:1: warning: directive in macro's argument list
 * check-error-end
 */