* 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.
This commit is contained in:
23
tests/tests2/77_push_pop_macro.c
Normal file
23
tests/tests2/77_push_pop_macro.c
Normal file
@ -0,0 +1,23 @@
|
||||
#include <stdio.h>
|
||||
|
||||
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);
|
||||
}
|
||||
Reference in New Issue
Block a user