[PATCH] D20660: Remove `auto_ptr` in C++17.

Eric Fiselier via cfe-commits cfe-commits at lists.llvm.org
Fri May 27 10:55:54 PDT 2016


> As for tests - XFAILing seems a bit general when there's really not much
value in running any of the tests anyway. REQUIRES, perhaps?

Unfortunately REQUIRES is a conjunction so the obvious "// REQUIRES: c++98,
c++03, c++11, c++14" won't work.

On Thu, May 26, 2016 at 11:32 AM, David Blaikie <dblaikie at gmail.com> wrote:

> NO_REMOVE seems like a strange way of saying it - is there existing
> precedent for that naming/description? (rather than something like
> _LIBCPP_PROVIDE_AUTOPTR ?
>
> As for tests - XFAILing seems a bit general when there's really not much
> value in running any of the tests anyway. REQUIRES, perhaps? (that does
> bring the issue I assume Eric is alluding to forward a bit (I assume what
> he's alluding to is that when we have c++2x then we'd have to say XFAIL
> c++1z c++2x and so on - switching it around we /already/ have the problem
> that we'd want the auto_ptr tests to REQUIRE c++11, c++14 or whatever)) &
> maybe having an explicit test or two for the negative case (I would worry
> that XFAIL would be too vague "this should fail somehow... "). But maybe
> that's all unnecessary paranoia.
>
> - Dave
>
> On Wed, May 25, 2016 at 9:28 PM, Marshall Clow via cfe-commits <
> cfe-commits at lists.llvm.org> wrote:
>
>> mclow.lists created this revision.
>> mclow.lists added a reviewer: EricWF.
>> mclow.lists added a subscriber: cfe-commits.
>>
>> [[ http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4190 | N4190
>> ]] removed `auto_ptr` from C++1z. (and other stuff)
>>
>> Wrap all the auto_ptr bits in an #ifdef so they disappear when compiling
>> with `-std=c++1z` or later.
>>
>> Introduce a new configuration option, `_LIBCPP_NO_REMOVE_AUTOPTR` which
>> allows user code to continue using `auto_ptr` in C++1z mode if desired.
>>
>> Add a test for `_LIBCPP_NO_REMOVE_AUTOPTR`, and mark all the rest of the
>> `auto_ptr` tests to XFAIL for c++1z
>>
>> http://reviews.llvm.org/D20660
>>
>> Files:
>>   include/memory
>>   test/libcxx/depr/depr.auto.ptr/auto.ptr/auto_ptr.cxx1z.pass.cpp
>>   test/std/depr/depr.auto.ptr/auto.ptr/auto.ptr.cons/assignment.pass.cpp
>>   test/std/depr/depr.auto.ptr/auto.ptr/auto.ptr.cons/convert.pass.cpp
>>
>> test/std/depr/depr.auto.ptr/auto.ptr/auto.ptr.cons/convert_assignment.pass.cpp
>>   test/std/depr/depr.auto.ptr/auto.ptr/auto.ptr.cons/copy.pass.cpp
>>   test/std/depr/depr.auto.ptr/auto.ptr/auto.ptr.cons/pointer.pass.cpp
>>
>> test/std/depr/depr.auto.ptr/auto.ptr/auto.ptr.conv/assign_from_auto_ptr_ref.pass.cpp
>>
>> test/std/depr/depr.auto.ptr/auto.ptr/auto.ptr.conv/convert_from_auto_ptr_ref.pass.cpp
>>
>> test/std/depr/depr.auto.ptr/auto.ptr/auto.ptr.conv/convert_to_auto_ptr.pass.cpp
>>
>> test/std/depr/depr.auto.ptr/auto.ptr/auto.ptr.conv/convert_to_auto_ptr_ref.pass.cpp
>>   test/std/depr/depr.auto.ptr/auto.ptr/auto.ptr.members/arrow.pass.cpp
>>   test/std/depr/depr.auto.ptr/auto.ptr/auto.ptr.members/deref.pass.cpp
>>   test/std/depr/depr.auto.ptr/auto.ptr/auto.ptr.members/release.pass.cpp
>>   test/std/depr/depr.auto.ptr/auto.ptr/auto.ptr.members/reset.pass.cpp
>>   test/std/depr/depr.auto.ptr/auto.ptr/element_type.pass.cpp
>>
>>
>> _______________________________________________
>> cfe-commits mailing list
>> cfe-commits at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20160527/c9642f86/attachment.html>


More information about the cfe-commits mailing list