Clang + LLVM or GCC?

Well lounge, which do you prefer? Or if something else, what do you use?

Personally I've only used GCC and MSVC and prefer GCC, but I've been interested in trying Clang for a while.
Clang and GCC are just about on the same page as far as functionality and usage. MSVC lags behind.

Clang has beautiful compiler output, though. Something that gcc doesn't have (as far as i know).
I hate that it shows you the line
Last edited on
Clang is an awesome compiler, the diagnostics are extremely helpful.

@nne555: you're insane, it's annoying to find the errors without the helpful display.
I love clang's library (libc++). It was written from scratch, directly to implement C++11, so a lot of code in it actually makes sense to me (but then there's an occasional BSDism, as in transform_primary())

Or if something else, what do you use?

Professionally, I use the compilers that are provided and supported by the hardware vendors: IBM xlC on IBM, Sun (Oracle) Studio on Sun, HP aCC on HP Itanium servers.

For the hobbies, it's Intel C++ (they have many great libraries, and perform better than GCC in a lot of cases), Clang++ (for the language and library support), and GCC (for the lowest common denominator)
@LLB: it says the line number (and column), that's enough.
You'll need to use the editor to fix it, there you can get as much context as you want
> which do you prefer?

Language: clang/GCC (these two are almost on par now). MSVC is clearly behind.

Library: clang, MSVC, daylight, GCC.
i'm sorry a basic question: what is meant by "language" supported by a compiler and "library" supported by a compiler.

Library support i can guess, but is the language support also different for different compilers? as in c++11 etc?
> what is meant by "language" supported by a compiler and "library" supported by a compiler.

An example will make this clear. For GCC:


Last edited on
Thanks for the links JLBorges. So what I infer is,

"language support" more or less caters to the features in the language syntax, eg. auto, template aliases etc.

and "library support" lists the libraries that we can include with that particular compiler.
No, "library support" is how well the included library meets the requirements of the C++ standard.
Topic archived. No new replies allowed.