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

David Blaikie via cfe-commits cfe-commits at lists.llvm.org
Fri May 27 11:01:19 PDT 2016


ah, indeed :/

On Fri, May 27, 2016 at 10:55 AM, Eric Fiselier <eric at efcs.ca> wrote:

> > 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/fbe4fdda/attachment.html>


More information about the cfe-commits mailing list