On 7/5/25 01:13, Jonathan Wakely wrote:
Clang wants this change: --- a/libstdc++-v3/include/std/mdspan +++ b/libstdc++-v3/include/std/mdspan @@ -509,7 +509,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION template<typename _Layout, typename _Mapping> concept __mapping_of = - is_same_v<typename _Layout::mapping<typename _Mapping::extents_type>, + is_same_v<typename _Layout::template mapping<typename _Mapping::extents_type>, _Mapping>; template<typename _Mapping> to fix: /home/jwakely/gcc/latest/lib/gcc/x86_64-pc-linux-gnu/16.0.0/../../../../include/c++/16.0.0/mdspan:512:30: error: use 'template' keyword to treat 'mapping' a s a dependent template name 512 | is_same_v<typename _Layout::mapping<typename _Mapping::extents_type>, | ^ I'll push that on Monday.
I've been dreading this. Unless, you're confident it's the only issue (my gut says it's not), is now a good time to ensure our implementation of mdspan is compatible with other compilers? Is there a good trick for doing this? (Better than --gcc-toolkit and try to compile each non-neg test file.) Which other compilers should I check?