diff options
| author | jiang <30155751@qq.com> | 2014-05-02 11:23:54 +0800 |
|---|---|---|
| committer | jiang <30155751@qq.com> | 2014-05-02 11:23:54 +0800 |
| commit | 6c8207633fd42e420e32bdf4912be9fbf307f5ad (patch) | |
| tree | f2bf62fb1288ac5fe026d2d6a54447e733154bb1 /tests | |
| parent | 5b52a44b524916bf564a9c399ce536a7ea5b5201 (diff) | |
| download | tinycc-6c8207633fd42e420e32bdf4912be9fbf307f5ad.tar.gz tinycc-6c8207633fd42e420e32bdf4912be9fbf307f5ad.tar.bz2 | |
Fixes include the double quotes bug
Added push_macro, pop_macro support
Fix pack bug, when output with-E will pack the bug
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/tcctest.c | 31 |
1 files changed, 25 insertions, 6 deletions
diff --git a/tests/tcctest.c b/tests/tcctest.c index ca2ad0b..5fac82e 100644 --- a/tests/tcctest.c +++ b/tests/tcctest.c @@ -235,7 +235,7 @@ void intdiv_test(void) void macro_test(void) { - printf("macro:\n");
+ printf("macro:\n"); pf("N=%d\n", N); printf("aaa=%d\n", AAA); @@ -379,6 +379,23 @@ comment /* And again when the name and parenthes are separated by a comment. */ TEST2 /* the comment */ (); + /* macro_push and macro_pop test */ + #define MACRO_TEST "macro_test1\n" + #pragma push_macro("MACRO_TEST") + #undef MACRO_TEST + #define MACRO_TEST "macro_test2\n" + printf(MACRO_TEST); + #pragma pop_macro("MACRO_TEST") + printf(MACRO_TEST); +/* gcc does not support + #define MACRO_TEST_MACRO "MACRO_TEST" + #pragma push_macro(MACRO_TEST_MACRO) + #undef MACRO_TEST + #define MACRO_TEST "macro_test3\n" + printf(MACRO_TEST); + #pragma pop_macro(MACRO_TEST_MACRO) + printf(MACRO_TEST); +*/ } @@ -2167,14 +2184,15 @@ void whitespace_test(void) { char *str; -
#if 1 + +#if 1 pri\ -ntf("whitspace:\n");
+ntf("whitspace:\n"); #endif pf("N=%d\n", 2); #ifdef CORRECT_CR_HANDLING - pri\
+ pri\ ntf("aaa=%d\n", 3); #endif @@ -2186,11 +2204,12 @@ ntf("min=%d\n", 4); printf("len1=%d\n", strlen(" ")); #ifdef CORRECT_CR_HANDLING - str = "
+ str = " "; printf("len1=%d str[0]=%d\n", strlen(str), str[0]); #endif - printf("len1=%d\n", strlen("
a + printf("len1=%d\n", strlen(" +a ")); #endif /* ACCEPT_CR_IN_STRINGS */ } |
