catchorg / catchorg/Catch2

failure to build on OpenIndiana g++14

Open
#3,013 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
21.5k
Forks
3.5k
Avg merge
3d 16h
Merged PRs (30d)
2

Description

**Describe the bug**
Build failure.
Image

And link failure if replacing with std::isnan.
Image

**Expected behavior**
It building and linking properly.

**Reproduction steps**
Steps to reproduce the bug.
- install OpenIndiana/some illumos-based distro with this specific gcc version
- `sudo pkg install gcc-14`
- `git clone --depth=1 https://github.com/catchorg/Catch2`
- `cd Catch2`
- `cmake -DCMAKE_BUILD_TYPE=Release -B build`
- `cmake --build build -- -j128`

**Platform information:**

- OS: OpenIndiana
- Compiler+version: **GCC v14.3.0**
- Catch version: **latest git**

**Additional context**
I solved the issue by replacing with std::isnan, but it didn't make the linker happy either, Replacing Catch::isnan for std::isnan in catch_tostring.cpp makes it compile and link just fine.

Contributor guide

Open the contributing guide

Research direction

Start with catch_tostring.cpp and reproduce the failure using the reported OpenIndiana environment, GCC 14.3.0, and the documented CMake build commands. Compare the Catch::isnan and std::isnan behavior, then verify that the project compiles and links successfully with the same build.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp
Domain
build-system
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.