aboutsummaryrefslogtreecommitdiff
path: root/tccgen.c
diff options
context:
space:
mode:
authorseyko <seyko2@gmail.com>2015-09-25 02:31:34 +0300
committerseyko <seyko2@gmail.com>2015-09-25 02:31:34 +0300
commit8077f0acc71612f1ccdb9f79938b0e26175e3e37 (patch)
treea7248042ab087ce44936f133c2021b27fd450081 /tccgen.c
parente7e7a0d3013c2da483c48a1a0a4c13bcf08716ad (diff)
downloadtinycc-8077f0acc71612f1ccdb9f79938b0e26175e3e37.tar.gz
tinycc-8077f0acc71612f1ccdb9f79938b0e26175e3e37.tar.bz2
a number as a field name (part 2)
don't crash a test program: ================ typedef struct X { int len; } X; #define init(s,len) s.len = len; int main(void) { X myX; init(myX,10); return 0; } ================ After a patch: error: field name expected
Diffstat (limited to 'tccgen.c')
-rw-r--r--tccgen.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/tccgen.c b/tccgen.c
index 4d85414..dbd2569 100644
--- a/tccgen.c
+++ b/tccgen.c
@@ -4166,6 +4166,8 @@ ST_FUNC void unary(void)
if (tok == TOK_CDOUBLE)
expect("field name");
next();
+ if (tok == TOK_CINT || tok == TOK_CUINT)
+ expect("field name");
s = vtop->type.ref;
/* find field */
tok |= SYM_FIELD;