> The original problem with the '.' is GAS was that tcc couldn't deal with labels
> starting '.'
Is this change works (with your patch reverted)?
case '.':
/* special dot handling because it can also start a number */
PEEKC(c, p);
if (isnum(c)) {
cstr_reset(&tokcstr);
cstr_ccat(&tokcstr, '.');
goto parse_num;
- } else if ((isidnum_table['.' - CH_EOF] & IS_ID) != 0) { /* asm mode */
+ } else if (parse_flags & PARSE_FLAG_ASM_FILE) { /* asm mode */
*--p = c = '.';
goto parse_ident_fast;
Another qiestion: what purpose of the following change?
if (tok != TOK_STR)
expect("string constant");
next();
+ if (tok == ',') {
+ next();
+ if (tok == '@' || tok == '%')
+ next();
+ next();
+ }
}
last_text_section = cur_text_section;
use_section(s1, sname);
}
break;
> f you do revert this change, please add a test for the SRC(y...) that passes on mob branch.
Not so simple: a file must be a *.S and makefile changes needed