1f08c3bdfSopenharmony_ci 2f08c3bdfSopenharmony_ci#define ABC abc 3f08c3bdfSopenharmony_ci#undef ABC 4f08c3bdfSopenharmony_ci 5f08c3bdfSopenharmony_ci#define DEF def 6f08c3bdfSopenharmony_ci#undef DEF 7f08c3bdfSopenharmony_ci#define DEF xyz 8f08c3bdfSopenharmony_ci 9f08c3bdfSopenharmony_ci#define NYDEF ydef 10f08c3bdfSopenharmony_ci 11f08c3bdfSopenharmony_ci#define STRING(x) #x 12f08c3bdfSopenharmony_ci#define CONCAT(x,y) x ## y 13f08c3bdfSopenharmony_ci 14f08c3bdfSopenharmony_ci#define unlocks(...) annotate(unlock_func(__VA_ARGS__)) 15f08c3bdfSopenharmony_ci#define apply(x,...) x(__VA_ARGS__) 16f08c3bdfSopenharmony_ci 17f08c3bdfSopenharmony_ciint main(int argc, char *argv[]) 18f08c3bdfSopenharmony_ci{ 19f08c3bdfSopenharmony_ci return 0; 20f08c3bdfSopenharmony_ci} 21f08c3bdfSopenharmony_ci/* 22f08c3bdfSopenharmony_ci * check-name: dump-macros only -dM 23f08c3bdfSopenharmony_ci * check-command: sparse -E -dM -DIJK=ijk -UNDEF -UNYDEF $file 24f08c3bdfSopenharmony_ci * 25f08c3bdfSopenharmony_ci * check-output-ignore 26f08c3bdfSopenharmony_cicheck-output-pattern(1): #define __CHECKER__ 1 27f08c3bdfSopenharmony_cicheck-output-contains: #define IJK ijk 28f08c3bdfSopenharmony_cicheck-output-contains: #define DEF xyz 29f08c3bdfSopenharmony_cicheck-output-contains: #define NYDEF ydef 30f08c3bdfSopenharmony_cicheck-output-contains: #define STRING(x) #x 31f08c3bdfSopenharmony_cicheck-output-contains: #define CONCAT(x,y) x ## y 32f08c3bdfSopenharmony_cicheck-output-contains: #define unlocks(...) annotate(unlock_func(__VA_ARGS__)) 33f08c3bdfSopenharmony_cicheck-output-contains: #define apply(x,...) x(__VA_ARGS__) 34f08c3bdfSopenharmony_cicheck-output-excludes: int main(int argc, char \\*argv\\[\\]) 35f08c3bdfSopenharmony_cicheck-output-excludes: ^\\[^#] 36f08c3bdfSopenharmony_ci */ 37