From 0c8447db7970813292a8be74ee50e49091be5d15 Mon Sep 17 00:00:00 2001 From: seyko Date: Tue, 21 Apr 2015 06:34:35 +0300 Subject: * and #pragma pop_macro("macro_name") * give warning if pragma is unknown for tcc * don't free asm_label in sym_free(), it's a job of the asm_free_labels(). The above pragmas are used in the mingw headers. Thise pragmas are implemented in gcc-4.5+ and current clang. --- tests/tests2/77_push_pop_macro.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 tests/tests2/77_push_pop_macro.c (limited to 'tests/tests2/77_push_pop_macro.c') diff --git a/tests/tests2/77_push_pop_macro.c b/tests/tests2/77_push_pop_macro.c new file mode 100644 index 0000000..1f0b1bc --- /dev/null +++ b/tests/tests2/77_push_pop_macro.c @@ -0,0 +1,23 @@ +#include + +int main() +{ + #define abort "111" + printf("abort = %s\n", abort); + + #pragma push_macro("abort") + #undef abort + #define abort "222" + printf("abort = %s\n", abort); + + #pragma push_macro("abort") + #undef abort + #define abort "333" + printf("abort = %s\n", abort); + + #pragma pop_macro("abort") + printf("abort = %s\n", abort); + + #pragma pop_macro("abort") + printf("abort = %s\n", abort); +} -- cgit v1.3.1