Skip to content

libojbc2 fails to build on Fedora Rawhide (GCC 15) #333

Description

@hobbes1069

I was performing test builds of the dependencies of robin-map in Fedora and ran into the following:

In file included from /builddir/build/BUILD/libobjc2-2.1-build/libobjc2-2.1/arc.mm:6:
In file included from /builddir/build/BUILD/libobjc2-2.1-build/libobjc2-2.1/third_party/robin-map/include/tsl/robin_map.h:34:
/builddir/build/BUILD/libobjc2-2.1-build/libobjc2-2.1/third_party/robin-map/include/tsl/robin_hash.h:251:13: error: no member named 'launder' in namespace 'std'; did you mean 'rand_r'?
  251 |     return *std::launder(
      |             ^~~~~~~~~~~~
      |             rand_r
/usr/include/stdlib.h:579:12: note: 'rand_r' declared here
  579 | extern int rand_r (unsigned int *__seed) __THROW;
      |            ^
In file included from /builddir/build/BUILD/libobjc2-2.1-build/libobjc2-2.1/arc.mm:6:
In file included from /builddir/build/BUILD/libobjc2-2.1-build/libobjc2-2.1/third_party/robin-map/include/tsl/robin_map.h:34:
/builddir/build/BUILD/libobjc2-2.1-build/libobjc2-2.1/third_party/robin-map/include/tsl/robin_hash.h:257:13: error: no member named 'launder' in namespace 'std'; did you mean 'rand_r'?
  257 |     return *std::launder(
      |             ^~~~~~~~~~~~
      |             rand_r
/usr/include/stdlib.h:579:12: note: 'rand_r' declared here
  579 | extern int rand_r (unsigned int *__seed) __THROW;
      |            ^
In file included from /builddir/build/BUILD/libobjc2-2.1-build/libobjc2-2.1/arc.mm:6:
In file included from /builddir/build/BUILD/libobjc2-2.1-build/libobjc2-2.1/third_party/robin-map/include/tsl/robin_map.h:34:
/builddir/build/BUILD/libobjc2-2.1-build/libobjc2-2.1/third_party/robin-map/include/tsl/robin_hash.h:1020:30: error: no member named 'clamp' in namespace 'std'
 1020 |     m_min_load_factor = std::clamp(ml, float(MINIMUM_MIN_LOAD_FACTOR),
      |                         ~~~~~^
/builddir/build/BUILD/libobjc2-2.1-build/libobjc2-2.1/third_party/robin-map/include/tsl/robin_hash.h:1025:30: error: no member named 'clamp' in namespace 'std'
 1025 |     m_max_load_factor = std::clamp(ml, float(MINIMUM_MAX_LOAD_FACTOR),
      |                         ~~~~~^
/builddir/build/BUILD/libobjc2-2.1-build/libobjc2-2.1/third_party/robin-map/include/tsl/robin_hash.h:252:9: error: cannot initialize a parameter of type 'unsigned int *' with an rvalue of type 'value_type *' (aka 'std::pair<const void *, (anonymous namespace)::WeakRef *> *')
  252 |         reinterpret_cast<value_type*>(std::addressof(m_value)));

Full build log here:
https://download.copr.fedorainfracloud.org/results/hobbes1069/OIIO/fedora-rawhide-x86_64/08876506-libobjc2/builder-live.log.gz

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions