Why is a transaction_safe function not recognized by std::is_function when compiling with GCC 7, libstdc++, and -fgnu-tm?

248 views Asked by At

Is the compilation failure below due to a libstdc++ defect, or is this behavior compliant with the Transactional Memory TS (n4514)?

#include <type_traits>
static_assert(std::is_function_v<void() transaction_safe>, "");
int main() {}
1

There are 1 answers

0
Jonathan Wakely On

It should work, please file a GCC bug report.