If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

@Vim_user, erandorn, Thanks for the clarification. In the link wwwdotstroustrupdotcom/compilers.html, stroustrup talks about different compilers for C++ and he mentions AppleC++ and ClangC++.. This is where my confustion started. Can you throw some light on this?

Thanks / Anandh

Apple LLVM Compiler != clang / llvm from llvm.org.

For example, Apple LLVM Compiler 3.1 — is a modified version of LLVM between 3.0 and 3.1. Modifications are closed source.
This is possible, because LLVM and CLANG are BSD licensed. This is something predicted because its BSD licensed thing.

Apple LLVM is optimized for Apple platform. The results produced from both stacks can vary.

I would use GCC, because it produces much faster binary for much more platforms, the compiler is GPL licensed - no buggy(open)/working(closed source) split present as with LLVM. The pro's of LLVM is that its modular and as such its to IR parsers are more capable to identify syntax bugs correctly.

I would not consider LLVM to be a serious solution at any timepoint, just as I don't consider BSD to be anything serious unlike MacOSX for desktops and Linux for desktops and servers.

But if you want to work gratis for Apple, you can ofc contribute to LLVM. Btw, GPL which unlike BSD really protects freedom of subject it covers, is banned from Apple.

1) Its not my problem how Apple does business.
2) Apple banned GPL, so Apple is not my problem as well.
3) I don't use Apple either, not my problem.
4) If Apple cared, they'd modularize GNU GCC or use any copyleft license. I see LLVM strictly as opencore - opencore concept is "rip off what you can". So, why bother?

Systemed rulz, My question is not related anything with GCC or which compiler is best. My question is all about the difference between Clang::LLVM and Apple::LLVM-if there is or both are same. please reply only if you can answer anything relevant to the question of this thread.

Apple's LLVM is just a branch of upstream Clang/LLVM. Upstream may have more bug fixes or performance work that Apple's branches lack, since most work happens on the main branch. Apple's branch may have some new OS X or iOS fixes, which get upstreamed in most cases (saves them work in the long run to do so).

In general, it's like a distribution's Linux kernel. Same thing, but older and maybe with some distro-specific patches that generally get upstreamed eventually.

1) Its not my problem how Apple does business.
2) Apple banned GPL, so Apple is not my problem as well.
3) I don't use Apple either, not my problem.
4) If Apple cared, they'd modularize GNU GCC or use any copyleft license. I see LLVM strictly as opencore - opencore concept is "rip off what you can". So, why bother?

For what it's worth, I don't think any company "bans" GPL -- they're just complying with the terms of the GPL license by making sure they don't mix GPL-licensed code in with proprietary-licensed code.