C++ Logo

SG10

Advanced search

Subject: Re: P2198R0, more feature-test poking from freestanding
From: Ville Voutilainen (ville.voutilainen_at_[hidden])
Date: 2020-07-12 15:23:27


On Sun, 12 Jul 2020 at 22:45, Jens Maurer via SG10
<sg10_at_[hidden]> wrote:
>
> On 12/07/2020 20.05, Ben Craig via SG10 wrote:
> > https://isocpp.org/files/papers/P2198R0.html
> >
> > While writing examples for feature-test usage in freestanding, I discovered how much of a pain it is to detect extensions to freestanding. The above paper makes that detection possible and makes policy recommendations for future papers. In order to fix the problem, I ended up bumping the version on _all_ the library feature test macros.
> >
> > Let me know what you think, and then we can figure out if we need an SG10 telecon to discuss this.
>
> Uh.. no.
>
> It seems that freestanding implementations that ship a <version> header
> with those feature-test macros present that represent features not
> available on their platform (e.g. std::filesystem) are actively misleading
> and violating the spirit of the feature-test macros.
>
> If the current wording allows or requires such macros for freestanding,
> the standard is buggy and needs to be DR-fixed.

libstdc++ seems to have made the feature-testing macros in <version>
conditional based on hosted/freestanding
at the end of last year. Ben is apparently trying to come up with a
solution that allows feature-testing feature-testing,
i.e. to cope with the shipping problematic implementations.


SG10 list run by herb.sutter at gmail.com