diff --git a/tccasm.c b/tccasm.c index 3339a62..4732405 100644 --- a/tccasm.c +++ b/tccasm.c @@ -916,21 +916,23 @@ static void asm_instr(void) nb_outputs = nb_operands; if (tok == ':') { next(); - /* input args */ - parse_asm_operands(operands, &nb_operands, 0); - if (tok == ':') { - /* clobber list */ - /* XXX: handle registers */ - next(); - for(;;) { - if (tok != TOK_STR) - expect("string constant"); - asm_clobber(clobber_regs, tokc.cstr->data); + if (tok != ')') { + /* input args */ + parse_asm_operands(operands, &nb_operands, 0); + if (tok == ':') { + /* clobber list */ + /* XXX: handle registers */ next(); - if (tok == ',') { + for(;;) { + if (tok != TOK_STR) + expect("string constant"); + asm_clobber(clobber_regs, tokc.cstr->data); next(); - } else { - break; + if (tok == ',') { + next(); + } else { + break; + } } } }