1f08c3bdfSopenharmony_ci#define f(x) x 2f08c3bdfSopenharmony_ci 3f08c3bdfSopenharmony_cif(1 4f08c3bdfSopenharmony_ci#if 1 // OK 5f08c3bdfSopenharmony_ci a 6f08c3bdfSopenharmony_ci#elif 2 // OK 7f08c3bdfSopenharmony_ci b 8f08c3bdfSopenharmony_ci#else // OK 9f08c3bdfSopenharmony_ci c 10f08c3bdfSopenharmony_ci#endif // OK 11f08c3bdfSopenharmony_ci#ifdef f // OK 12f08c3bdfSopenharmony_ci d 13f08c3bdfSopenharmony_ci#endif // OK 14f08c3bdfSopenharmony_ci#ifndef f // OK 15f08c3bdfSopenharmony_ci e 16f08c3bdfSopenharmony_ci#endif // OK 17f08c3bdfSopenharmony_ci 3) 18f08c3bdfSopenharmony_ci 19f08c3bdfSopenharmony_cif(1 20f08c3bdfSopenharmony_ci#define x y // KO 21f08c3bdfSopenharmony_ci 3) 22f08c3bdfSopenharmony_ci 23f08c3bdfSopenharmony_ci/* 24f08c3bdfSopenharmony_ci * check-name: directive-within-macro 25f08c3bdfSopenharmony_ci * check-command: sparse -E $file 26f08c3bdfSopenharmony_ci * 27f08c3bdfSopenharmony_ci * check-output-start 28f08c3bdfSopenharmony_ci 29f08c3bdfSopenharmony_ci1 a d 3 30f08c3bdfSopenharmony_ci1 3 31f08c3bdfSopenharmony_ci * check-output-end 32f08c3bdfSopenharmony_ci * 33f08c3bdfSopenharmony_ci * check-error-start 34f08c3bdfSopenharmony_cipreprocessor/directive-within-macro.c:20:1: warning: directive in macro's argument list 35f08c3bdfSopenharmony_ci * check-error-end 36f08c3bdfSopenharmony_ci */ 37