This is an archive of the discontinued LLVM Phabricator instance.

[libcxx] [test] Make vector.bool/construct_default.pass.cpp more portable.
AbandonedPublic

Authored by STL_MSFT on Jun 29 2016, 4:25 PM.

Details

Summary

Make vector.bool/construct_default.pass.cpp more portable.

vector<bool>'s default ctor and allocator ctor aren't depicted as noexcept in the Working Paper. We're already directly including test_macros.h, so use LIBCPP_STATIC_ASSERT.

Diff Detail

Event Timeline

STL_MSFT updated this revision to Diff 62303.Jun 29 2016, 4:25 PM
STL_MSFT retitled this revision from to [libcxx] [test] Make vector.bool/construct_default.pass.cpp more portable..
STL_MSFT updated this object.
STL_MSFT added reviewers: EricWF, mclow.lists.
STL_MSFT added a subscriber: cfe-commits.
EricWF edited edge metadata.Jun 29 2016, 9:34 PM

The fact that they are not noexcept in the working paper seems like an oversight. Is there a reason your vector<bool> default constructor can't be noexcept?

STL_MSFT abandoned this revision.Jul 1 2016, 4:44 PM

Nah, they can totally be noexcept like the primary template. Usually we don't strengthen beyond the WP, but the wording is so clearly defective here, I'll go ahead and do this. No test changes necessary now.