delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2015/06/05/13:37:06

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
X-Recipient: djgpp AT delorie DOT com
Message-ID: <5571DE34.7030908@iki.fi>
Date: Fri, 05 Jun 2015 20:36:52 +0300
From: "Andris Pavenis (andris DOT pavenis AT iki DOT fi)" <djgpp AT delorie DOT com>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0
MIME-Version: 1.0
To: djgpp AT delorie DOT com
Subject: Re: DJGPP v2.05: some thoughts
References: <55673F0B DOT 1090103 AT iki DOT fi> <83twuwwshg DOT fsf AT gnu DOT org> <55675040 DOT 9030008 AT iki DOT fi> <556F6E49 DOT 8010006 AT gmx DOT de> <556FCCDF DOT 7080005 AT iki DOT fi> <83bngvr0ef DOT fsf AT gnu DOT org> <557078B1 DOT 9040004 AT iki DOT fi> <201506041613 DOT t54GDT8m014488 AT envy DOT delorie DOT com> <5570B1F7 DOT 1070509 AT iki DOT fi> <201506042022 DOT t54KMxkJ024069 AT envy DOT delorie DOT com> <55712D17 DOT 2040205 AT iki DOT fi> <83k2vipr7n DOT fsf AT gnu DOT org>
In-Reply-To: <83k2vipr7n.fsf@gnu.org>
Reply-To: djgpp AT delorie DOT com

On 06/05/2015 10:08 AM, Eli Zaretskii (eliz AT gnu DOT org) wrote:
>> Date: Fri, 05 Jun 2015 08:01:11 +0300
>> From: "Andris Pavenis (andris DOT pavenis AT iki DOT fi)" <djgpp AT delorie DOT com>
>>
>> On 06/04/2015 11:22 PM, DJ Delorie wrote:
>>> Hmmm... either our headers need to be updated to newer ANSI versions
>>> (should we be exporting more symbols now?) or libstdc++ is making
>>> assumptions they're not telling us about (we'd need to test for those
>>> assumptions, not __cplusplus in general).
>>>
>> libstdc++ uses these macros unconditionally. So perhaps there is no other quick way as my earlier
>> patch for now.
>> Run some script (under Linux) to check whether there are other similar problems after patching errno.h
>>
>> Script compiled header files in similar way using -std=c++03 ,-c++11 and c++14. I ignored failures
>> for which also similar Linux compile fails (like c++11 required). Fedora 22 has gcc-5.1 as system
>> compiler so that fits nicely for testing.
>>
>> The results: no more unexpected failures after patching errno.h (some parts of libstdc++ depends on
>> other stuff and as result fails)
>>
>> So I'll applying patch unless there are objections
> Please apply it only conditioned by __cplusplus, and please make sure
> no errno macros that are NOT defined by the C++11 draft standard are
> defined by errno.h when both __cplusplus and __STRICT_ANSI__ are
> defined.
>
> IOW, we still want to be compatible to ANSI standards, even though
> they changed since v2.03.
>
> Thanks.
>
I committed change to trunk (not v2.05 branch yet). Detecting used C++ standard is bit tricky as 
its support was already being developed earlier.
gcc versions 4.3 - 4.6 require special treatment

Andris

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019