Boost logo

Boost :

Subject: Re: [boost] [function] new implementation
From: Domagoj Saric (domagoj.saric_at_[hidden])
Date: 2010-11-04 06:30:14

"Sebastian Redl" <sebastian.redl_at_[hidden]> wrote in message
> On 04.11.2010 11:07, Domagoj Saric wrote:
>> - integral constant expressions in static asserts (but so does Clang and
>> older GCCs)
>> - RVO with classes that derive from boost::noncopyable (but so does Clang
>> and all GCCs)...
> Have you filed bugs?

No, don't have time currently...waiting for the whole thing to stabilize...

> RVO in Clang is not very advanced yet, but the ICE thing with
> static_asserts would be something we want to fix.

It's not an ICE but a compilation if the expression resolves to
false...which OTOH resolves to true when checked at runtime with a
I was quite surprised to see that even the latest GCCs still have problems
with integral constant expressions (even when I use the constexpr syntax)...

ps. as a 'slight' off topic, since you seem to be involved in Clang
development, you might want to make Clang a lot less eager to examine
template code before it is instantiated (or add an option to that
effect)...this sometimes acts as 'spiralling compile time killer' because
it, for example, forces me to include headers that MSVC does not (or simply
fails to compile 3rd party libraries like RapidXML)...
The 'lazyness' of MSVC++ in template instantiation is probably one of the
reasons why even Clang does not come near to it when it comes to compilation
Also the claim that Clang uses less RAM than GCC is not (always) true...with
heavy template code (very convoluted mixtures of MPL and Fusion with
typelist lengths up to 60) I've seen it eat 20-30% more than GCC 4.6 (but it
still does compile faster, if you have enough RAM)...

"What Huxley teaches is that in the age of advanced technology, spiritual
devastation is more likely to come from an enemy with a smiling face than
from one whose countenance exudes suspicion and hate."
Neil Postman 

Boost list run by bdawes at, gregod at, cpdaniel at, john at