14 Jan
2018
14 Jan
'18
12:48 a.m.
Niall Douglas wrote:
Peter's LWG defect resolution - as far as I understand it - needs some extra compiler magic in the form of Immortalize.
No, you're reading that incorrectly, it requires no compiler magic, it's implementable today. In the typical case it's just extern const __system_category_impl __syscat; constexpr error_category const& system_category() { return __syscat; } When I proposed that, Billy O'Neal from MS objected that their system_category does extra "immortalization" so constexpr is unimplementable. So I gave a proof of concept of how their "immortalization" can be implemented to still be constexpr. I should probably just add the relevant constexpr's to Boost.System.