tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Tinycc-devel] GAS symbols


From: Vladimir Vissoultchev
Subject: Re: [Tinycc-devel] GAS symbols
Date: Wed, 30 Mar 2016 02:11:16 +0300

Hi,

Unfortunately the offending fix of mine causes 'y...' to be treated as a
single identifier instead of y followed by TOK_DOTS which is gcc extension
to designate 'y' to become __VA_ARGS__ replacement. Nasty!

If going forward with the commit the plan is in tccpp.c around line 1337
(nice line:-)) to check if an identifier is ending with '...' and set
is_vaargs instead of current check for TOK_DOTS on next token. That or
switching PARSE_FLAG_ASM_FILE off for preprocessor directives in .S files.

Will have to write a failing test too.

cheers,
</wqw>

-----Original Message-----
From: address@hidden
[mailto:address@hidden On Behalf Of
Sergey Korshunoff
Sent: Tuesday, March 29, 2016 8:55 PM
To: address@hidden
Subject: Re: [Tinycc-devel] GAS symbols

Hi!

Patch  "Identifiers can start and/or contain '.' in PARSE_FLAG_ASM_FILE"
breaks preprocessing on *.S
A test program (from a linux-2.4.26)

#define SRC(y...)                   \
        9999: y;                        \
        .section __ex_table, "a";       \
        .long 9999b, 6001f      ;       \
        .previous
SRC(1:  movw (%esi), %bx        )
// 029-test.S:7: error: macro 'SRC' used with too many args //
commit_bad=aa1ed616eb01efe353e7c5e829fffbed01b428bd
//    Identifiers can start and/or contain '.' in PARSE_FLAG_ASM_FILE
//
// commit_good=17395ea5070bb05681f93ce7a8019c8c863a607b

This test compules OK if changes commut_good..commit_bad are reverted.

_______________________________________________
Tinycc-devel mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/tinycc-devel




reply via email to

[Prev in Thread] Current Thread [Next in Thread]