9 comments

[ 3.8 ms ] story [ 19.2 ms ] thread
Clang C++ is now feature-complete with respect to the ISO C++ 1998 and 2003 standards.

this seems like a pretty big milestone. in particular, clang now has a libc++.

they also mention now supporting objective-c++. that's got to be one strange beast to code in.

LLVM is "sponsored" by Apple, who are keen to see good Objective-C support; Objective-C++ isn't really a combination of C++ and Objective-C, its more a compatibility option between different libraries and APIs.
> Objective-C++ isn't really a combination of C++ and Objective-C, its more a compatibility option between different libraries and APIs.

Eh, I'd say that's even more misleading.

In the same sense that Objective-C is a strict superset of C, Objective-C++ is a strict superset of C++, adding the same features to C++ that Objective-C adds on top of C.

In practice, this means that you can mix Objective-C++ and C++ in the same file (but you can't treat C++ classes and objects as Objective-C++ classes or objects, or vice-versa).

I think you've misinterpreted my post. I /generally/ agree with what you've said.
this seems like a pretty big milestone

It is! I yesterday compiled latest llvm/clang myself (surprisingly easy, by the way) to test how it would help our build times. We use a lot of C++ templates and gcc compilation times are a big pain point. I just ran syntax check with clang and it already found a bunch of pretty serious bugs, so it's not only faster but better at finding errors too.

they also mention now supporting objective-c++. that's got to be one strange beast to code in.

We do it daily. It's just a mixture of C++ and Objective-C code. I think quite many game studios are using Obj-C++ as their own libraries are in C++, but many times you need some interface elements from UIKit.

Nothing magical in Obj-C++, but there are a few dangerous ways to shoot your in the foot that you don't really learn by reading but by shooting.

I don't understand the hype.

I downloaded and installed the Mac binaries, but it couldn't compile the STL headers that Xcode installed.

It's FAR from production quality, IMHO.