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)" 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> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit 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)" >> >> 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