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

David Blaikie via cfe-commits cfe-commits at lists.llvm.org
Thu May 26 10:32:34 PDT 2016


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/20160526/c9bc6168/attachment-0001.html>


More information about the cfe-commits mailing list