C++ Logo

SG10

Advanced search

Subject: Re: [SG10] Updates to SD-6: N4190
From: Ed Smith-Rowland (3dw4rd_at_[hidden])
Date: 2015-01-08 18:06:59


On 01/08/2015 05:17 PM, Jens Maurer wrote:
> On 01/08/2015 06:33 PM, Nelson, Clark wrote:
>> So I'm suggesting that macros for these removed features might not be
>> justified -- as we similarly decided that no macro is needed to indicate the
>> removal of trigraphs.
> Sounds reasonable.
>
> Any real-world code using the removed stuff will probably fail to
> compile, prompting some source code rewrite. So you'd have
>
> #ifdef __cpp_lib_unique_ptr (or whatever the name is)
> // use unique_ptr
> #else
> // must be an old compiler, use auto_ptr
> #endif
>
>
> Jens
>
>
> _______________________________________________
> Features mailing list
> Features_at_[hidden]
> http://www.open-std.org/mailman/listinfo/features
>
My concern is twofold:

1. There are people who may need to support code bases across multiple
compiler versions and multiple compilers and even within one compiler
across a version of C++ or two. I think it would be good to make sure
that each feature to be removed has a feature macro for the new
replacing feature so for builds against older C++ versions and compilers
can know when to switch when the new feature is available.

2. Are the replacement features in the same headers? The above won't
work if the old and new features are in different headers. It looks like
the powers that be tried to make that the case but I haven't looked hard.

Ed


SG10 list run by herb.sutter at gmail.com