[PATCH] D6762: [libcxx] Add <experimental/any> v2.
Marshall Clow
mclow.lists at gmail.com
Wed Jul 22 08:20:02 PDT 2015
mclow.lists added a comment.
One issue and a few nits.
================
Comment at: src/any.cpp:18
@@ +17,3 @@
+}
+
+_LIBCPP_END_NAMESPACE_LFTS
----------------
Because of arcane packaging issues, we put the exception classes in an unversioned namespace and the destructors in the the dylib as well. See <optional> implementation.
_LIBCPP_BEGIN_NAMESPACE_EXPERIMENTAL
const char* bad_any_cast::what() const _NOEXCEPT
{
return "bad any cast";
}
bad_any_cast::~ bad_any_cast() _NOEXCEPT {}
_LIBCPP_END_NAMESPACE_EXPERIMENTAL
This will require a change in the header file as well
================
Comment at: test/std/experimental/any/any.class/any.assign/copy.pass.cpp:194
@@ +193,1 @@
+}
\ No newline at end of file
----------------
Should probably fix this. (add newline)
================
Comment at: test/std/experimental/any/any.class/any.assign/move.pass.cpp:102
@@ +101,1 @@
+}
\ No newline at end of file
----------------
and this (newline)
================
Comment at: test/std/experimental/any/any.class/any.modifiers/clear.pass.cpp:42
@@ +41,3 @@
+ any a(s);
+
+ a.clear();
----------------
I think that adding an `assertNotEmpty<small>(a)` here (and on line #52) will make the test better.
For completeness, you could add `assertEmpty(a)` on line #34 as well.
http://reviews.llvm.org/D6762
More information about the cfe-commits
mailing list