https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86335

            Bug ID: 86335
           Summary: [9 regression] libstdc++ memory_resource gives error
                    on 32-bit targets
           Product: gcc
           Version: 9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libstdc++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: wilco at gcc dot gnu.org
  Target Milestone: ---

The following warning happens when you use memory_resource:

...libstdc++-v3/include/experimental/memory_resource:329: warning: left shift
count >= width of type [-Wshift-count-overflow]

This is due to r261849:
        if (_M_align <= (1ul << (sizeof(int) * __CHAR_BIT__)))
          return sizeof(int);

These tests fail as a result:

FAIL: experimental/memory_resource/1.cc (test for excess errors)
FAIL: experimental/memory_resource/70966.cc (test for excess errors)
FAIL: experimental/memory_resource/new_delete_resource.cc (test for excess
errors)
FAIL: experimental/memory_resource/null_memory_resource.cc (test for excess
errors)
FAIL: experimental/memory_resource/resource_adaptor.cc (test for excess errors)
FAIL: experimental/type_erased_allocator/2.cc (test for excess errors)

Reply via email to