diff options
| -rw-r--r-- | tccgen.c | 2 | ||||
| -rw-r--r-- | tests/tcctest.c | 5 |
2 files changed, 6 insertions, 1 deletions
@@ -4013,7 +4013,7 @@ static int post_type(CType *type, AttributeDef *ad, int storage, int td) if (tok == '[') { next(); skip(']'); /* only handle simple "[]" */ - type->t |= VT_PTR; + mk_pointer(type); } /* we push a anonymous symbol which will contain the function prototype */ ad->a.func_args = arg_size; diff --git a/tests/tcctest.c b/tests/tcctest.c index e86a2a6..b6e4116 100644 --- a/tests/tcctest.c +++ b/tests/tcctest.c @@ -176,6 +176,11 @@ static int onetwothree = 123; #define B3 4 #endif +#ifdef __TINYC__ +/* We try to handle this syntax. Make at least sure it doesn't segfault. */ +char invalid_function_def()[] {} +#endif + #define __INT64_C(c) c ## LL #define INT64_MIN (-__INT64_C(9223372036854775807)-1) |
