[PATCH v1 0/1] Prepare for and double check LWG4272.

Tomasz Kaminski tkaminsk@redhat.com
Tue Sep 9 07:03:51 GMT 2025


Hi,

On the LWG reflector the issues was found with the original PR where for
the padded layouts,
we have had:

    !is_convertible_v<typename LayoutRightPaddedMapping::extents_type,
extents_type> &&
    rank_ > 1 &&
    (padding_value != dynamic_extent ||
    LayoutRightPaddedMapping::padding_value == dynamic_extent)

Where it should be instead:

  !is_convertible_v<typename LayoutLeftPaddedMapping::extents_type,
extents_type> ||
  rank_> 1 &&
 (padding_value != dynamic_extent ||
 LayoutLeftPaddedMapping::padding_value == dynamic_extent)

Would you mind rebasing this patch on top of left padded layout to confirm
that this is now working correctly?

On Thu, Aug 21, 2025 at 6:18 PM Tomasz Kaminski <tkaminsk@redhat.com> wrote:

> The LWG4274 was prioritized on reflector, and got assigned priority P2,
> however was not yet approved. I will recheck/review this patch next week,
> and
> will start another pool on reflector, with mention of implementation
> experience.
>
> On Tue, Jun 10, 2025 at 9:21 PM Luc Grosheintz <luc.grosheintz@gmail.com>
> wrote:
>
>> This patch implements LWG4272. LWG4272 has not been discussed
>> or approved. This patch serves to demonstrate that LWG4272 leads
>> to uniform behaviour of ctors when rank == 0.
>>
>> This isn't patch doesn't add any _GLIBCXX_RESOLVE_LIB_DEFECTS
>> markers, and isn't necessarily intended to be merged (as is).
>>
>> Luc Grosheintz (1):
>>   libstdc++: Convertibility of rank == 0 layouts, LWG4272.
>>
>>  libstdc++-v3/include/std/mdspan               |  6 +-
>>  .../23_containers/mdspan/layouts/ctors.cc     | 60 ++++++++++++++++++-
>>  2 files changed, 62 insertions(+), 4 deletions(-)
>>
>> --
>> 2.49.0
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://gcc.gnu.org/pipermail/libstdc++/attachments/20250909/42639d1f/attachment-0001.htm>


More information about the Libstdc++ mailing list