From: | arnold@skeeve.com (Aharon Robbins) |
Newsgroups: | comp.compilers |
Date: | Mon, 12 Sep 2016 18:42:05 -0000 (UTC) |
Organization: | A noiseless patient Spider |
References: | 16-09-001 |
Injection-Info: | miucha.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="98508"; mail-complaints-to="abuse@iecc.com" |
Keywords: | C, debug |
Posted-Date: | 12 Sep 2016 15:01:15 EDT |
In article 16-09-001, Aharon Robbins <arnold@skeeve.com> wrote:
>Can I get recommendations for other (free) C compilers besides GCC and CLANG?
>I've been using the revived PCC for gawk development since it's faster
>than GCC, but recently it's developed a bug where it won't compile the
>current (valid) code.
>
>LCC seems to be 32 bit only and requires very manual configuration.
>
>TinyCC is blindingly fast, and can compile gawk, but is broken in that
>it won't diagnose duplicate case statements inside switch. The developers
>don't consider this a problem. So I refuse to use it.
>
>In short, I'm looking for a faster compiler that actually works.
Thanks for all the replies. Some short replies to the relevant
answers:
To Jacob Navia - I'm sorry it's rough selling C compilers. I understand
your complaints. As others pointed out, duplicate cases is a constraint
violation. Why would I used a compiler that didn't catch missing
semicolons or allowed only two expressions in a for(;;) ? Same thing
applies to case statements.
As Kaz further pointed out, you can't just compile with it and then
recompile with gcc before committing. Big PITA, and I actually ended
up one time making a bad commit because tcc didn't catch duplicate cases.
Nemo - Intel and Oracle compilers - I'm sure they're good, but I'm
looking for FAST compilation. I often do 'make distclean' and then
configure and make many times over in one session. Fast compiles
make a big difference. I'd use GCC or clang for anything I wanted to
install, but while developing, speed is wonderful, but correctness
beats it.
Kaz suggested C++ - that's a lot of work for my code base. It might
get me more type checking but it won't get me compilation speed. C++
compilers can be slower than C compilers.
Florian - golang compilers. Worth checking out.
Privately, I was pointed at nwcc, but it fails to compile gawk.
Privately by someone else, I was suggested to just fix tcc myself.
It turns out that I was able to add duplicate case checking in about
an hour's work and just under 100 lines of code. But I have the
background and experience for that; I suspect someone else would
have had a harder time.
I will see about trying to get the upstream to accept it. And I hope
that PCC will eventually get fixed too.
Thanks all,
Arnold
--
Aharon (Arnold) Robbins arnold AT skeeve DOT com
Return to the
comp.compilers page.
Search the
comp.compilers archives again.