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

--- Comment #1 from Alexander Lelyakin <alexander.lelyakin at googlemail dot 
com> ---
There is a shorter sequence:
----
/usr/local/bin/g++ -std=c++20 -fmodules-ts -x c++-system-header string_view
/usr/local/bin/g++ -std=c++20 -fmodules-ts -x c++-system-header deque
/usr/local/bin/g++ -std=c++20 -fmodules-ts -x c++-system-header string
/usr/local/bin/g++ -std=c++20 -fmodules-ts -x c++-system-header fstream
/usr/local/bin/g++ -std=c++20 -fmodules-ts -x c++-system-header
condition_variable
----
In file included from /usr/local/include/c++/11.0.1/semaphore:35,
                 from /usr/local/include/c++/11.0.1/stop_token:37,
                 from /usr/local/include/c++/11.0.1/condition_variable:47:
/usr/local/include/c++/11.0.1/bits/semaphore_base.h: In instantiation of
‘struct std::__atomic_semaphore<int>’:
/usr/local/include/c++/11.0.1/bits/semaphore_base.h:292:45:   required from
here
/usr/local/include/c++/11.0.1/bits/semaphore_base.h:172:23: error: non-constant
condition for static assertion
  171 |       static_assert(__gnu_cxx::__int_traits<_Tp>::__max
      |                                                   ~~~~~
  172 |                       <= __gnu_cxx::__int_traits<ptrdiff_t>::__max);
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/c++/11.0.1/bits/semaphore_base.h:172:23: error: the value of
‘__gnu_cxx::__numeric_traits_integer<long int>::__max’ is not usable in a
constant expression
In file included from /usr/local/include/c++/11.0.1/bits/stl_algobase.h:63,
                 from /usr/local/include/c++/11.0.1/bits/char_traits.h:39,
                 from /usr/local/include/c++/11.0.1/string_view:41,
of module /usr/local/include/c++/11.0.1/string_view, imported at
/usr/local/include/c++/11.0.1/bits/basic_string.h:48,
        included from /usr/local/include/c++/11.0.1/string:55,
of module /usr/local/include/c++/11.0.1/string, imported at
/usr/local/include/c++/11.0.1/stdexcept:39,
        included from /usr/local/include/c++/11.0.1/system_error:41,
                 from /usr/local/include/c++/11.0.1/bits/std_mutex.h:39,
                 from /usr/local/include/c++/11.0.1/condition_variable:40:
/usr/local/include/c++/11.0.1/ext/numeric_traits.h:75:27: note:
‘__gnu_cxx::__numeric_traits_integer<long int>::__max’ was not initialized with
a constant expression
   75 |       static const _Value __max = __is_signed
      |                           ^~~~~
/usr/local/include/c++/11.0.1/condition_variable: warning: not writing module
‘/usr/local/include/c++/11.0.1/condition_variable’ due to errors
----
g++ (GCC) 11.0.1 20210324 (experimental)
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Reply via email to