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

Eric Fiselier via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Jan 4 22:25:38 PST 2017


EricWF added inline comments.


================
Comment at: include/memory:1962
 
+#if _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_NO_REMOVE_AUTOPTR)
 template <class _Tp>
----------------
I would love to have a semi-consistent naming scheme for macros which re-enable removed C++17 features. Maybe `_LIBCPP_ENABLE_REMOVED_CXX17_FOO`? I'l apply whatever naming scheme we decide on to the changes in D28172


================
Comment at: include/memory:2019
 };
+#endif
 
----------------
Comment on the `#endif`?


================
Comment at: test/libcxx/depr/depr.auto.ptr/auto.ptr/auto_ptr.cxx1z.pass.cpp:20
+#define _LIBCPP_NO_REMOVE_AUTOPTR
+
+#include <memory>
----------------
Please add `// MODULES_DEFINES: _LIBCPP_NO_REMOVE_AUTOPTR`


================
Comment at: test/std/depr/depr.auto.ptr/auto.ptr/auto.ptr.cons/assignment.pass.cpp:16
 
+// XFAIL: c++1z
+
----------------
Please use `REQUIRES: c++98, c++03, c++11, c++14`  instead of `XFAIL: c++1z` for two reasons:

1) The former is future proof to new standard dialects whereas the latter is not.
2) `XFAIL` should only be used on tests that fail due to a bug or missing compiler feature, not for tests which we expect to fail for well defined reasons.


https://reviews.llvm.org/D20660





More information about the cfe-commits mailing list