Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-4041-8081-

Best C Compiler?

Name: Anonymous 2009-11-02 7:46

What is THE BEST (or your favorite) C compiler?

1. gcc (GNU C Compiler)
2. pcc (Portable C Compiler)
3. tcc (Tiny C Compiler)
4. dmc (Digital Mars C compiler)
5. icc (Intel C Compiler)
6. lcc (Local/Little C Compiler)
7. other (please specify)

Explain why it is your favorite or THE BEST or why other choice(s) suck.

Name: Anonymous 2009-11-02 7:49

GCC is the best, due to GNU QUALITY

Name: Anonymous 2009-11-02 7:53

does it really matter which one you use?
i just use gcc because it comes preinstalled

Name: Anonymous 2009-11-02 8:12

1. Generates acceptable code
2. Generates terrible code
3. Generates terrible code
4. Don't know / only runs on Windows / source available under non-free license
5. Generates good code / proprietary / only free-as-in-beer for non-commercial Linux use
6. Generates terrible code
7. LLVM clang: Generates acceptable code / no releases, only available as source from SVN
7. Microsoft Visual C++: generates okay code / runs only on Windows / proprietary / somewhat limited free-as-in-beer version available

Overall winner: gcc

Name: Anonymous 2009-11-02 8:18

>>3
Not really, but I was recently reading some old stuff about how GCC is bloated and buggy (especially but not limited to the MinGW port, which I know is out-dated as fuck).

It doesn't really bother me to use GCC but if there really is a better alternative then I'd give it a shot.  But so far I haven't noticed bugginess and the compile time generally isn't a problem considering faster compilers (like TCC) might not generate as good code (according to >>4)

I just wanted to know what other people think of C compilers since I have never tried to use anything other than the default GCC that I've always used.

Name: Anonymous 2009-11-02 8:25

On Win32, I would prefer MSVC over gcc anyday. On other platforms gcc. Besides that, there's some more specialized compilers for generating very efficient code for certain specific common tasks.

Name: Anonymous 2009-11-02 8:34

doesn't visual studio force you to deal with that .NET virtual machine faggotry rather than actual compilation?
or am i confused with something else?
i don't know much about dot NET.

Name: Anonymous 2009-11-02 9:07

>>7
MS bundles their compiler with Visual Studio, but it's just a separate compiler, which works independently of that IDE. It also comes with some other development kits, and is mostly 'freely available'. The proper name of the actual compiler is "Microsoft C/C++ Optimizing Compiler"

The compiler has existed since many years ago ( DOS and then 9x and of course currently NT) and has nothing to do with .NET. C# and other .NET languages come with their own compilers. Don't let the IDE and MS' marketing make you confuse unrelated software one with the other, just because they may now be bundled in the same large package.

Name: Anonymous 2009-11-02 9:38

greetings from /jp/:
>lcc on list
>watcom not on list

Name: Anonymous 2009-11-02 10:37

With GCC comes familiar suckage on whichever platform you use it on. There is an advantage to that.

>>4
7. LLVM clang: (...) no releases

Xcode 3.2, bitch.

Name: Anonymous 2009-11-02 10:56

Well, I only write code for platforms people actually use, so MSVCC for me.

Name: Anonymous 2009-11-02 11:13

>>11
Did you just say that gays are not people?

Name: Anonymous 2009-11-02 11:20

>>4
dmc is proprietary yes, but it is a fairly good compiler nonetheless.
At least it's easier to get working than gcc on Windows. Cygwin sucks ass, and mingw32 is a fragmented mess of shit.

Name: Anonymous 2009-11-02 11:30

clang was released with LLVM 2.6.

Name: Anonymous 2009-11-02 12:26

I wrote my own ansi C compiler when I was 12

Name: Anonymous 2009-11-02 13:09

acc (Anonix C compiler)

Name: Anonymous 2009-11-02 13:13

>>15
We all did. This thread is about compilers other people wrote.

Name: Anonymous 2009-11-02 15:02

ARM RVMDK

Name: Anonymous 2009-11-02 15:16

THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST THE BEST

Name: Anonymous 2009-11-02 15:40

>>6,11
Enjoy your forced ASM intrinsics use on x64, along with your 30% decreased performance, along with your job.

Name: Anonymous 2009-11-02 15:42

gcc works, tcc is awesome on small projects, when it works, the code is usually smaller and faster than gcc's. Shame it does not work too often.

Name: Anonymous 2009-11-02 15:51

>>21
I don't think so, Tim.

Name: Anonymous 2009-11-02 16:27

>>20
forced ASM intrinsics use on x64,
Is that a bad thing?

Name: Anonymous 2009-11-02 16:27

The real problem is you guys are using a language that is over 30 years old. Is there any other industry that is using technology old enough to be your dad and succeeding?

I think not.

Name: Anonymous 2009-11-02 16:31

>>24
LOL troll

Name: Anonymous 2009-11-02 16:43

>>24
Lisp is roughly the same age as my dad, and it's used as widely as ever

Name: Anonymous 2009-11-02 16:47

>>26
You mean not at all.

Name: Anonymous 2009-11-02 16:55

>>24
It works fine.  And I would learn to use a higher-level language but I've never found another language that fits the niche.

Python comes close, but it's interpreted (and has undergone a very awesome period wherein the language creator has decided to complete break compatibility with existing code by releasing a new version of the language with slightly different syntax -- really cool!)

Java is pig-shit, and also interpreted.  Not even going to consider C++ for obvious reasons.

Needless to say, everything else just sucks ass as a choice when I want to develop a real application.  I will just stick with C.

Name: Anonymous 2009-11-02 17:00

>>27
thatwasthejoke.asciiart

Name: Anonymous 2009-11-02 17:39

>>28
and has undergone a very awesome period
You make it sound like that's already over. Have I missed something?

Name: Anonymous 2009-11-02 18:00

I'm becoming tired of rewriting my code to conform to MSVC's C99 noncompliance, shit sucks.
GCC is better in that regard, and for quick hacks it has some nice nonstandard features like nested functions.

GCC doesn't optimize very well though, and I hear the code is intentionally kept a mess by RMS just to make sure people can't connect proprietary frontends/backends to it, because... just because.
Does anyone know of a compiler that will inline calls to function pointers, especially for expanding qsort and similar callback functions?

Name: Anonymous 2009-11-02 18:14

>>31
GCC has a plugin architecture nowadays, but it'll take years before anyone really takes advantage of it. Also, the code wasn't "kept a mess", it just intentionally lacked the functionality to write out and read in certain intermediary formats.

Name: Anonymous 2009-11-02 18:21

>>31
I hear the code is intentionally kept a mess by RMS just to make sure people can't connect proprietary frontends/backends to it, because... just because.
i lol'd.
and then cried.
it's probably true.

Name: Anonymous 2009-11-02 18:24

>>33
I doubt it, when was the last time RMS even coded?

Name: Anonymous 2009-11-02 18:35

>>34
that doesn't mean he can't command other people to do it.
he IS the self-proclaimed emperor of opensource software and the jesus of code, he has a lot of followers who will blindy do whatever he asks.

Name: Haxus the C Coder 2009-11-02 18:43

>>31
I don't understand why people want to use nested functions.

and some reasons that might have to do with why gcc is a mess:
The truth about GCC is that it is a monster of a system. This system is decades old. It has to account for a massive number of different quirks for the different standards, different languages and different architectures. The age of the system together with it's massive scope leads to results that may not be optimal as compared to more focused compilers.

Name: Anonymous 2009-11-02 19:16

>>24,31
and thus we come full circle

Name: Anonymous 2009-11-02 19:16

>>36
focus my anus

Name: Anonymous 2009-11-02 19:38

>>28
Java
interpreted.
Troll harder.

Name: Anonymous 2009-11-02 20:08

>>39
Java has a bytecode interpreter yes?

Name: Anonymous 2009-11-02 20:19

>>40
Yes, bytecode is interpreted, Java is compiled.

Name: Anonymous 2009-11-02 20:50

>>41
Face is palmed.

Name: Anonymous 2009-11-02 21:30

>>42
Anus is haxed.

Name: Anonymous 2009-11-02 21:39

>>39,41
back to reddit please

Name: Anonymous 2009-11-02 23:51

>>35
RMS doesn't actually give a shit about "open source".

Name: Haxus the Hygienic 2009-11-03 0:45

RMS doesn't actually give a shit about his open sores.

Name: Anonymous 2009-11-03 1:22

Whitesmiths, because it sounds like a heavy metal band.

Name: Anonymous 2009-11-03 1:26

>>39,41

Java and most other modern interpreted languages are compiled into byte code.  Java just has to be done explicitly.  IHBT

Name: Anonymous 2009-11-03 1:58

GCC produces poor quality code. The compiler also claims "standards compliance," which is fine because the standard is fairly weak, but it sucks dick at behaving like you'd expect and/or supporting some features you'd expect it to support.

Intel's compiler is the best one on that list, but there needs to be a decent free-as-in-speech alternative. GCC is not a decent alternative. There are projects in the works, but they're not any better due to their maturity.

Also, I happen to love Theo. He calls it like it is.

Name: Anonymous 2009-11-03 2:36

>>49
What projects?

Name: Anonymous 2009-11-03 3:50

>>50
ANONIX CC

Name: Anonymous 2009-11-03 3:56

>>35
These words sound kinda stupid when spoken by person who can't tell the difference between "free software" and "open source", ya know.

Name: Anonymous 2009-11-03 4:00

>>52
The word "free" sounds kinda stupid when spoken by a person who can't tell the difference between "free" and "GNU".

Name: Anonymous 2009-11-03 4:02

>>53
"free software" has a well defined meaning in our society.

Name: Anonymous 2009-11-03 4:03

>>54
yeah.
and it by no means is defined as GNU

Name: Anonymous 2009-11-03 5:04

UBUNTU has only GCC, so GCC it is.

Name: Anonymous 2009-11-03 5:37

>>56
You can use you're compiler to compile another compiler

Name: Anonymous 2009-11-03 5:42

>>33
what i believe he's referring to is gcc's "fold", which messes with the AST in such a way as to obfuscate the original program. it takes a long time and only has a minor performance gain, not to mention the code that does it is nigh-incomprehensible.

it's true that the java bytecode backend was intentionally removed so no "evil corporation" could compile to java bytecode, use gcc to compile the java bytecode to optimized java bytecode, and in doing so use gcc for "evil"

Name: Haxus the Amish Programmer 2009-11-03 7:21

We been spending most our lives
Living in an Amish paradise
We're just plain and simple guys
Living in an Amish paradise
There's no time for sin and vice
Living in an Amish paradise
We don't fight, we all play nice
Living in an Amish paradise

Name: Anonymous 2009-11-03 8:03

>>50
LLVM/Clang, primarily. You might laugh, but Apple develops better software than the GNU elite. No exceptions.

Name: Anonymous 2009-11-03 9:50

>>24
The internal combustion engine was invented in the 1800s. IHBT

Name: Anonymous 2009-11-03 12:31

>>61
I have an electric car, you dolt!

Name: Anonymous 2009-11-03 19:40

ask ##C on irc.freenode.net so you can be snarked to death by the ++angsty mods who live there

Name: Anonymous 2009-11-04 0:44

GCC, anyone who gives a different answer is either a shitty troll or mentally retarded

Name: Anonymous 2009-11-04 1:40

>>65
0/1

Name: Anonymous 2009-11-04 1:48

THE BESTTHE BESTTHE BESTvTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTvTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTvTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BESTTHE BEST

Name: Anonymous 2009-11-04 4:22

>>60
You might laugh
I am laughing.
Poor little guy, believes everything that Apple fanatics tell him.
All Apple products are perfect; there has never been a bug in Apple code; It is impossible to hack an Apple computer; etc.
LOL

Name: Anonymous 2009-11-04 4:32

>>68

I am laughing.

Name: Anonymous 2009-11-04 6:12

>>69
So am I.

Name: Anonymous 2009-11-04 6:41

>>68
Nice straw man, but I didn't say any of those things. I hate Apple, but there's no denying that they put out better products than GNU.

Name: Anonymous 2009-11-04 11:03

GCC is really pretty amazing considering the number of languages and platforms supported if you ask me.

>>24
Mathematics? Physics? And therefore electrical engineering, etc?

>>10
Wow! Really?! I'm really looking forward to using it once it has proper support for C++, which will be never, since Apple doesn't care about C++.

Name: Anonymous 2009-11-04 11:32

>>72
Yes, one of the available compiler alternatives is "Clang LLVM 1.0". But you should follow Apple's example and stop caring about C++. After all, engineering is all about eliminating problems.

Name: Anonymous 2009-11-04 11:49

>>73
But they "eliminate" the problem by using ObjC instead.

Name: Anonymous 2009-11-04 12:40

>>72
Why would anyone care about C++?

Name: Anonymous 2009-11-04 13:16

>>74
Which is good because it's a very nice language and the Cocoa runtime is amazing.

Name: Anonymous 2009-11-04 13:54

the jesus of code
THE GNU RELIGION

Name: Anonymous 2009-11-04 13:56

Which one comes with QT?

Name: Anonymous 2009-11-04 15:24

>>72
Amazing, in my opinion, would be generating decent or better code for all the languages it "supports." Unfortunately, its code is poor across the board. That's like saying shit isn't shit because there's a lot of it.

Name: Anonymous 2009-11-04 19:18

sdcc was here, other c compilers are a faggot

Name: Anonymous 2009-11-04 19:47

cl.exe - microsoft's optimizing c/c++ compiler

Name: Anonymous 2009-11-04 22:21

ghci - Good Human-Computer Interface

Name: Anonymous 2009-11-04 23:38

>>80
Now there's a compiler that produces bad code.

Name: Anonymous 2009-11-05 3:37

>>49
open64!

Name: Anonymous 2009-11-05 16:40

>>71
And what compiler do they use to build their most superior products?

Also at least open souse developers don't intentionally design [i]defective[/] products.

Name: Anonymous 2009-11-05 17:13

>>85
Right, they're defective by accident or because the developers are shit.

Name: sage 2009-11-06 4:16

sage

Name: Anonymous 2009-11-08 0:45

I was told that this example of include-guards:

/* somefile.h */

#ifndef _SOMEFILE_H_
#define _SOMEFILE_H_

/* put your declarations and stuff here as usual */

#endif


is bad because it "invades the reserved namespace for identifiers", but that it would be perfectly fine if I removed the leading underscore.

I don't quote understand how it's harmful to the namespace with the leading _, or how removing it will somehow be better.  Can someone explain?

Name: Anonymous 2009-11-08 0:46

>>1

None. Having a favorite C compiler is like having favorite cutlery for eating shit.

Name: Anonymous 2009-11-08 7:19

>>88
C symbol names automatically get one leading underscore, and two leading underscores is the namespace reserved for the compiler.

Name: Anonymous 2009-11-08 13:14

>>88
Some stupid person thought that linker exports preprocessor definitions as symbols?

Name: Anonymous 2009-11-08 13:33

>>91
0/10

Name: Anonymous 2009-11-08 14:06

>>90
Ok, makes sense, but as >>91 said, why would the pre-processor have anything to do with the symbol table?

Name: Anonymous 2009-11-08 16:02

Appendix B of K&R sez regarding the standard library

External identifiers that begin with an underscore are reserved for use by the library, as are all other identifiers that begin with an underscore and an upper-case letter or another underscore.

So the potential problem is that your header guard could conflict with an identifier in the system headers.

Name: Anonymous 2009-11-08 17:22

>>24
Typical kid who sits in the back of class calling Java slow.  Or makes sure his volume is up loud before booting up Ubantu, to make sure everyone hears the "TTARMADDAMPUP" so that they're all aware you're running a superior GNU/Linux Operating System.

COBOL dates back to 1960.  It's still in widespread use.

Name: Anonymous 2009-11-08 17:47

>>95
At least that's not as bad as the kid who forgets to turn off the system beep while using FreeBSD without a DE or window manager.

Name: Anonymous 2009-11-14 19:52

>>95
Like a Harley rider?

Name: Anonymous 2011-02-03 0:38

Name: Anonymous 2011-02-18 13:44

<-- check my doubles

Name: Anonymous 2011-02-18 17:42

<-- check 'em dubz

Don't change these.
Name: Email:
Entire Thread Thread List