This was voted into C++17 at last week's Jacksonville meeting. The final P0152R1 paper will be in the upcoming post-Jacksonville mailing, and is also available here:
http://jfbastien.github.io/papers/P0152R1.html
Differential D17951
Implement is_always_lock_free jfb on Mar 7 2016, 6:19 PM. Authored by
Details This was voted into C++17 at last week's Jacksonville meeting. The final P0152R1 paper will be in the upcoming post-Jacksonville mailing, and is also available here: http://jfbastien.github.io/papers/P0152R1.html
Diff Detail Event Timeline
Comment Actions @jfb: Actually I changed my mind about guarding the new tests. Can you move the new tests (other than the missing additions) to a new test file? Then add // UNSUPPORTED: c++98, c++03, c++11, c++14 to the top of it? Comment Actions Visual Studio has a flag, /Zc:wchar_t-, that turns wchar_t into a short. This flag is for people that need to maintain ABI compatibility with ancient Visual Studios (MSVC6? MSVC5?). It is definitely non-conformant, and many things support it poorly. I still have nightmares of supporting boost::filesystem users where boost::filesystem was built with real wchar_t, but clients tried to use it with wchar_t as short. The linker generally disapproved of those shenanigans. I'm totally fine if libcxx doesn't try to support this situation... but if it did want to support it, it would need to selectively not define wchar_t. Comment Actions +1 for libcxx not supporting that. I think there are plenty of places where this is already broken in libc++. Comment Actions That would be pre-C++ standardization (*any* standard) code trying to interact with C++17. I'm inclined to say we shouldn't care ;-)
Comment Actions As discussed in now-abandoned D17950 I'll implement everything in libc++. I just have to move the feature test macro to libc++. Comment Actions Re-building clang now so I can test the most recent changes.
Comment Actions
|
Moving these from the bottom of the file since I need them.