You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Oops, please withdraw - it turns out I was accidentally compiling with the Apple default Clang 6, which presumably predates the standard changing. Clang 7 lib handles this correctly.
It is still failing, but for a different reason since Clang 7.
Looks like my successful build was an off-by-one in my command line history and I re-ran the gcc test.
You may want to add an abominable function to the test harness, as it seems they also fail, e.g.,
int( ) &
int(...) &
int( ) & noexcept
int(...) & noexcept
Extended Description
The simple test expression:
static_assert(!std::is_invokable_v);
is expected to compile, but libc++ rejects this as 'void' is not a complete type.
According to the standard, the requirements on "Fn" are:
"Fn and all types in the template parameter pack ArgTypes shall be complete types, cv void, or arrays of unknown bound."
This may be boiler-plate standardese for handling incomplete types that merits an LWG issue instead, but note that gcc handles this case correctly.
The text was updated successfully, but these errors were encountered: