Boost logo

Boost :

Subject: Re: [boost] [config] including typeinfo in dinkumware.hpp when RTTIisdisabled
From: Beman Dawes (bdawes_at_[hidden])
Date: 2013-11-01 14:13:39


On Fri, Nov 1, 2013 at 1:54 PM, Edward Diener <eldiener_at_[hidden]>wrote:

> On 11/1/2013 12:30 PM, Peter Dimov wrote:
>
>> Edward Diener wrote:
>>
>>> Also, in the build of clang with the VC++ iDE, the _HAS_EXCEPTIONS=0
>>> define is being used extensively.
>>>
>>
>> Judging by the compiler error, it appears that the standard library
>> doesn't define std::exception at all when _HAS_EXCEPTIONS=0. Boost
>> libraries do depend on std::exception as a base class for their own
>> exception types even when exceptions are off, so its absence is likely
>> to break a lot of things, not just <typeinfo>.
>>
>
> I agree with your analysis.
>
> In VC++ RTTI, aka typeinfo, cannot be used without std::exception support.
> But perhaps we can at least circumvent this in Boost.config by not
> including typeinfo for vc++ if RTTI is turned off, which seems reasonable.
> I will work with that scenario locally and see what happens next. If it is
> totally unrealistic trying to compile Boost libraries with clang on Windows
> if RTTI and exception handling are turned off, I will mention this on the
> clang developer's forum and post a bug report against it on clang bugzilla.
>

IMO that is the best way to handle this. No point in Boosters putting in
effort to work around a problem so serious it blocks most use of clang on
windows anyhow. They will have to fix it if they are serious about clang
and windows.

If you send me the bugzilla number, I'll drop Chandler Carruth a note
asking them to give it high priority. The squeaky wheel gets the grease.

--Beman


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk