On 16.11.2024 04:02, Michael Ackermann via Tinycc-devel wrote:
Greetings,

while regression-testing tcc against a system profile of ~500 ebuilds a
potential endless-loop condition was spotted
(during one of hundreds of configure checks):
- if a library linking option is passed such as -lz
- and this library libz.so isn't present in the library search path
   (i am supporting static linking against libz.a currently)
- then tcc option parser got stuck in an endless loop and tcc binary
   didn't terminate then

The problem got introduced with the following commit February 2024:
42395a19128b7db756721a55e4630ece82cb315b

It may not be trivial to re-produce the error-condition, and it is rarely hit,
but I could reliably confirm reverting the change made to tcc.c resolved the
issue under mentioned circuumstances. The required revert/patch is attached.

hi,  hopefully fixed now.  I also added a -fgnu89-inline option that
might help to workaround 'extern inline' problems.

As a side note, i am not sure if each individual regression that i could reveal
with extensive testing if those should be posted to the mailing list
(see https://lists.gnu.org/archive/html/tinycc-devel/2024-11/msg00016.html).
Temporarily i joined #tcc channel at OFTC, but it seems completely abandoned.
Please let me know how efforts could best be coordinated to produce the least
amount of noise possible.

I'd hope the amount of regressions will turn out to be somewhat finite ;)

Btw there is also an approach to a 4.6 linux kernel (by Michael Matz)
https://github.com/susematz/linux/blob/tcc46/README.tcc

As to x86-16bit asm, tcc actually had it, to some extend, once:
https://repo.or.cz/tinycc.git/commitdiff/55bd08c5

--gr


Regards.
aggi

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

Reply via email to