On Wed, 18 Mar 2026 at 14:56, Tomasz Kaminski <[email protected]> wrote:
>
>
>
> On Wed, Mar 18, 2026 at 3:41 PM Jakub Jelinek <[email protected]> wrote:
>>
>> Hi!
>>
>> Here is a new version of the plugin.
>> As requested, it doesn't diagnose any of the headers outside of
>> <bits/stdc++.h>, for -std=c++26 tests with also -freflection -fcontracts
>> for now, contains a self test for the plugin to make sure it diagnoses
>> stuff it should diagnose and doesn't what it shouldn't, walks template
>> specializations, walks non-template functions inside of templates,
>> adds GC support to the plugin, whitelists submdspan_mapping manually
>> for C++26,
>
> Why exactly submdspan_mapping needs a special treatment, it should
> be no different from other ADL-only calls in the library, like begin/end?

The plugin only cares about names, and it's not the same as begin/end
because those are names that occur in many more contexts.  I assume
the plugin finds names like std::string::begin and std::begin and so
it automatically treats those names as standard APIs that don't need
to be uglified. There is no declaration of std::submdspan_mapping at
namespace scope, and no member of that name. The only declarations are
hidden friends, so maybe the plugin is not seeing those, or is not
considering them as declarations of standard APIs.

Reply via email to