-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
Closed
NVIDIA/cuCollections
#186Labels
Description
Describe the bug
Tests that use Catch2 fail to compile on Fedora Rawhide.
Expected behavior
Tests that use Catch2 compile and execute without any problems on Fedora Rawhide.
Reproduction steps
Try to compile the factorial example from the Catch2 tutorial:
$ c++ test.cpp
In file included from /usr/include/signal.h:315,
from catch.hpp:8034,
from test.cpp:2:
catch.hpp:10822:58: error: call to non-'constexpr' function 'long int sysconf(int)'
10822 | static constexpr std::size_t sigStackSize = 32768 >= MINSIGSTKSZ ? 32768 : MINSIGSTKSZ;
| ^~~~~~~~~~~
In file included from /usr/include/bits/sigstksz.h:24,
from /usr/include/signal.h:315,
from catch.hpp:8034,
from test.cpp:2:
/usr/include/unistd.h:630:17: note: 'long int sysconf(int)' declared here
630 | extern long int sysconf (int __name) __THROW;
| ^~~~~~~
In file included from test.cpp:2:
catch.hpp:10881:45: error: size of array 'altStackMem' is not an integral constant-expression
10881 | char FatalConditionHandler::altStackMem[sigStackSize] = {};
| ^~~~~~~~~~~~
Platform information:
- OS: latest Fedora Rawhide
- Compiler+version: gcc (GCC) 11.0.0 20210210 (Red Hat 11.0.0-0)
- Catch version: v2.13.4
Additional context
This behaviour seems to be related to this change in glibc
: https://sourceware.org/git/?p=glibc.git;a=commit;h=6c57d320484988e87e446e2e60ce42816bf51d53
vmihalko, flaphoschi, kenranunderscore and Avicted