Всем привет! Пытаюсь собрать reVC из исходников, компиляция завершается ошибкой 2. До этого года 3 назад собирал под Linux Mint 20, всё было успешно.
Правильно ли я думаю, что дело в версии GCC ?
user@user-pc ~/D/r/build (miami)> make reVC -j4
==== Building librw (debug_linux-x86-librw_gl3_glfw-oal) ====
==== Building reVC (debug_linux-x86-librw_gl3_glfw-oal) ====
Running prebuild commands
"./../printHash.sh" "./../src/extras/GitSHA1.cpp"
re3.cpp
In file included from /usr/include/c++/14.1.1/bits/stl_algo.h:59,
from /usr/include/c++/14.1.1/algorithm:61,
from ../src/extras/ini_parser.hpp:34,
from ../src/core/re3.cpp:192:
/usr/include/c++/14.1.1/bits/algorithmfwd.h:225:55: ошибка: в макрос «clamp» передано 4 аргументов, но используется только 3
225 | clamp(const _Tp&, const _Tp&, const _Tp&, _Compare);
| ^
In file included from ../src/core/re3.cpp:3:
../src/core/common.h:286:9: замечание: макрос «clamp» определён здесь
286 | #define clamp(v, low, high) ((v)<(low) ? (low) : (v)>(high) ? (high) : (v))
| ^~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3643:78: ошибка: в макрос «clamp» передано 4 аргументов, но используется только 3
3643 | mp(const _Tp& __val, const _Tp& __lo, const _Tp& __hi, _Compare __comp)
| ^
../src/core/common.h:286:9: замечание: макрос «clamp» определён здесь
286 | #define clamp(v, low, high) ((v)<(low) ? (low) : (v)>(high) ? (high) : (v))
| ^~~~~
/usr/include/c++/14.1.1/bits/algorithmfwd.h:220:5: ошибка: expected unqualified-id before «const»
220 | clamp(const _Tp&, const _Tp&, const _Tp&);
| ^~~~~
/usr/include/c++/14.1.1/bits/algorithmfwd.h:220:5: ошибка: expected «)» before «const»
../src/core/common.h:286:30: замечание: to match this «(»
286 | #define clamp(v, low, high) ((v)<(low) ? (low) : (v)>(high) ? (high) : (v))
| ^
/usr/include/c++/14.1.1/bits/algorithmfwd.h:220:5: ошибка: expected «)» before «const»
220 | clamp(const _Tp&, const _Tp&, const _Tp&);
| ^~~~~
../src/core/common.h:286:29: замечание: to match this «(»
286 | #define clamp(v, low, high) ((v)<(low) ? (low) : (v)>(high) ? (high) : (v))
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:3623:5: ошибка: expected unqualified-id before «const»
3623 | clamp(const _Tp& __val, const _Tp& __lo, const _Tp& __hi)
| ^~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3623:5: ошибка: expected «)» before «const»
../src/core/common.h:286:30: замечание: to match this «(»
286 | #define clamp(v, low, high) ((v)<(low) ? (low) : (v)>(high) ? (high) : (v))
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:3623:5: ошибка: expected «)» before «const»
3623 | clamp(const _Tp& __val, const _Tp& __lo, const _Tp& __hi)
| ^~~~~
../src/core/common.h:286:29: замечание: to match this «(»
286 | #define clamp(v, low, high) ((v)<(low) ? (low) : (v)>(high) ? (high) : (v))
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:3643:5: ошибка: переопределение «template<class _Tp, class _Compare> constexpr const _Tp& std::clamp»
3643 | clamp(const _Tp& __val, const _Tp& __lo, const _Tp& __hi, _Compare __comp)
| ^~~~~
/usr/include/c++/14.1.1/bits/algorithmfwd.h:225:5: замечание: «template<class _Tp, class _Compare> constexpr const _Tp& std::clamp<_Tp, _Compare>» ранее декларировано здесь
225 | clamp(const _Tp&, const _Tp&, const _Tp&, _Compare);
| ^~~~~
In file included from /usr/include/c++/14.1.1/csignal:41,
from ../src/core/re3.cpp:1:
/usr/include/c++/14.1.1/bits/stl_algo.h:3645:7: ошибка: expected primary-expression before «do»
3645 | __glibcxx_assert(!__comp(__hi, __lo));
| ^~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3645:7: ошибка: expected «}» before «do»
/usr/include/c++/14.1.1/bits/stl_algo.h:3644:5: замечание: to match this «{»
3644 | {
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:3645:7: ошибка: expected unqualified-id before «while»
3645 | __glibcxx_assert(!__comp(__hi, __lo));
| ^~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3646:7: ошибка: expected unqualified-id before «return»
3646 | return std::min(std::max(__val, __lo, __comp), __hi, __comp);
| ^~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3672:5: ошибка: «pair» не является именем типа
3672 | pair<_IntType, _IntType>
| ^~~~
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «void shuffle(_RandomAccessIterator, _RandomAccessIterator, _UniformRandomNumberGenerator&&)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:3707:24: ошибка: expected nested-name-specifier before «iterator_traits»
3707 | typedef typename iterator_traits<_RandomAccessIterator>::difference_type
| ^~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3707:39: ошибка: expected initializer before «<» token
3707 | typedef typename iterator_traits<_RandomAccessIterator>::difference_type
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:3710:43: ошибка: «_DistanceType» was not declared in this scope; did you mean «Distance2D»?
3710 | typedef typename std::make_unsigned<_DistanceType>::type __ud_type;
| ^~~~~~~~~~~~~
| Distance2D
/usr/include/c++/14.1.1/bits/stl_algo.h:3710:56: ошибка: некорректный аргумент шаблона 1
3710 | typedef typename std::make_unsigned<_DistanceType>::type __ud_type;
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:3710:57: ошибка: «<declaration error>» не является шаблоном [-fpermissive]
3710 | typedef typename std::make_unsigned<_DistanceType>::type __ud_type;
| ^~
/usr/include/c++/14.1.1/bits/stl_algo.h:3714:24: ошибка: expected nested-name-specifier before «remove_reference»
3714 | typedef typename remove_reference<_UniformRandomNumberGenerator>::type
| ^~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3714:40: ошибка: expected initializer before «<» token
3714 | typedef typename remove_reference<_UniformRandomNumberGenerator>::type
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:3716:24: ошибка: expected nested-name-specifier before «common_type»
3716 | typedef typename common_type<typename _Gen::result_type, __ud_type>::type
| ^~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3716:35: ошибка: expected initializer before «<» token
3716 | typedef typename common_type<typename _Gen::result_type, __ud_type>::type
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:3719:13: ошибка: «__uc_type» не является именем типа; имелось в виду «__ud_type»?
3719 | const __uc_type __urngrange = __g.max() - __g.min();
| ^~~~~~~~~
| __ud_type
/usr/include/c++/14.1.1/bits/stl_algo.h:3720:13: ошибка: «__uc_type» не является именем типа; имелось в виду «__ud_type»?
3720 | const __uc_type __urange = __uc_type(__last - __first);
| ^~~~~~~~~
| __ud_type
/usr/include/c++/14.1.1/bits/stl_algo.h:3722:11: ошибка: нет декларации «__urngrange» в этой области видимости
3722 | if (__urngrange / __urange >= __urange)
| ^~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3722:25: ошибка: нет декларации «__urange» в этой области видимости
3722 | if (__urngrange / __urange >= __urange)
| ^~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3743:17: ошибка: «__uc_type» не является именем типа; имелось в виду «__ud_type»?
3743 | const __uc_type __swap_range = __uc_type(__i - __first) + 1;
| ^~~~~~~~~
| __ud_type
/usr/include/c++/14.1.1/bits/stl_algo.h:3745:17: ошибка: «pair» не является именем типа
3745 | const pair<__uc_type, __uc_type> __pospos =
| ^~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3748:43: ошибка: нет декларации «__pospos» в этой области видимости
3748 | std::iter_swap(__i++, __first + __pospos.first);
| ^~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «_InputIterator for_each_n(_InputIterator, _Size, _Function)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:3808:29: ошибка: expected nested-name-specifier before «iterator_traits»
3808 | using _Cat = typename iterator_traits<_InputIterator>::iterator_category;
| ^~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3809:21: ошибка: «is_base_of_v» was not declared in this scope; did you mean «std::is_base_of_v<_Base, _Derived>»?
3809 | if constexpr (is_base_of_v<random_access_iterator_tag, _Cat>)
| ^~~~~~~~~~~~
| std::is_base_of_v<_Base, _Derived>
In file included from /usr/include/c++/14.1.1/bits/stl_pair.h:60,
from /usr/include/c++/14.1.1/bits/stl_algobase.h:64,
from /usr/include/c++/14.1.1/bits/specfun.h:43,
from /usr/include/c++/14.1.1/cmath:3898,
from /usr/include/c++/14.1.1/math.h:36,
from ../src/core/common.h:16:
/usr/include/c++/14.1.1/type_traits:3514:25: замечание: «std::is_base_of_v<_Base, _Derived>» declared here
3514 | inline constexpr bool is_base_of_v = __is_base_of(_Base, _Derived);
| ^~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3809:34: ошибка: «random_access_iterator_tag» was not declared in this scope; did you mean «std::random_access_iterator_tag»?
3809 | if constexpr (is_base_of_v<random_access_iterator_tag, _Cat>)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
| std::random_access_iterator_tag
In file included from /usr/include/c++/14.1.1/bits/stl_algobase.h:65:
/usr/include/c++/14.1.1/bits/stl_iterator_base_types.h:107:10: замечание: «std::random_access_iterator_tag» declared here
107 | struct random_access_iterator_tag : public bidirectional_iterator_tag { };
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3809:62: ошибка: нет декларации «_Cat» в этой области видимости
3809 | if constexpr (is_base_of_v<random_access_iterator_tag, _Cat>)
| ^~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:3809:67: ошибка: expected primary-expression before «)» token
3809 | if constexpr (is_base_of_v<random_access_iterator_tag, _Cat>)
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h: На глобальном уровне:
/usr/include/c++/14.1.1/bits/stl_algo.h:4023:21: ошибка: expected nested-name-specifier before «iterator_traits»
4023 | inline typename iterator_traits<_InputIterator>::difference_type
| ^~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:4023:36: ошибка: expected initializer before «<» token
4023 | inline typename iterator_traits<_InputIterator>::difference_type
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:4047:21: ошибка: expected nested-name-specifier before «iterator_traits»
4047 | inline typename iterator_traits<_InputIterator>::difference_type
| ^~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:4047:36: ошибка: expected initializer before «<» token
4047 | inline typename iterator_traits<_InputIterator>::difference_type
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «_OutputIterator merge(_InputIterator1, _InputIterator1, _InputIterator2, _InputIterator2, _OutputIterator)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:4875:30: ошибка: «__merge» is not a member of «std»; did you mean «merge»?
4875 | return _GLIBCXX_STD_A::__merge(__first1, __last1,
| ^~~~~~~
| merge
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «_OutputIterator merge(_InputIterator1, _InputIterator1, _InputIterator2, _InputIterator2, _OutputIterator, _Compare)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:4926:30: ошибка: «__merge» is not a member of «std»; did you mean «merge»?
4926 | return _GLIBCXX_STD_A::__merge(__first1, __last1,
| ^~~~~~~
| merge
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «void __stable_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:4936:24: ошибка: expected nested-name-specifier before «iterator_traits»
4936 | typedef typename iterator_traits<_RandomAccessIterator>::value_type
| ^~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:4936:39: ошибка: expected initializer before «<» token
4936 | typedef typename iterator_traits<_RandomAccessIterator>::value_type
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:4938:24: ошибка: expected nested-name-specifier before «iterator_traits»
4938 | typedef typename iterator_traits<_RandomAccessIterator>::difference_type
| ^~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:4938:39: ошибка: expected initializer before «<» token
4938 | typedef typename iterator_traits<_RandomAccessIterator>::difference_type
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:4945:15: ошибка: «_Temporary_buffer» не является именем типа
4945 | typedef _Temporary_buffer<_RandomAccessIterator, _ValueType> _TmpBuf;
| ^~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:4948:7: ошибка: «_TmpBuf» was not declared in this scope; did you mean «__jmp_buf»?
4948 | _TmpBuf __buf(__first, (__last - __first + 1) / 2);
| ^~~~~~~
| __jmp_buf
/usr/include/c++/14.1.1/bits/stl_algo.h:4950:28: ошибка: нет декларации «__buf» в этой области видимости
4950 | if (__builtin_expect(__buf.requested_size() == __buf.size(), true))
| ^~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:4952:47: ошибка: «_DistanceType» не имеет аргументов, зависящих от параметра-шаблона, поэтому должна быть доступна декларация «_DistanceType» [-fpermissive]
4952 | __first + _DistanceType(__buf.size()),
| ^~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:4952:47: замечание: (с ключом «-fpermissive», G++ примет данный код, но разрешение использовать недекларированные имена будет отменено в дальнейших версиях)
/usr/include/c++/14.1.1/bits/stl_algo.h:4958:44: ошибка: «_DistanceType» не имеет аргументов, зависящих от параметра-шаблона, поэтому должна быть доступна декларация «_DistanceType» [-fpermissive]
4958 | _DistanceType(__buf.size()), __comp);
| ^~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «void stable_sort(_RandomAccessIterator, _RandomAccessIterator)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:4993:23: ошибка: «__stable_sort» is not a member of «std»; did you mean «stable_sort»?
4993 | _GLIBCXX_STD_A::__stable_sort(__first, __last,
| ^~~~~~~~~~~~~
| stable_sort
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «void stable_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5029:23: ошибка: «__stable_sort» is not a member of «std»; did you mean «stable_sort»?
5029 | _GLIBCXX_STD_A::__stable_sort(__first, __last,
| ^~~~~~~~~~~~~
| stable_sort
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «_OutputIterator set_union(_InputIterator1, _InputIterator1, _InputIterator2, _InputIterator2, _OutputIterator)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5111:30: ошибка: «__set_union» is not a member of «std»; did you mean «set_union»?
5111 | return _GLIBCXX_STD_A::__set_union(__first1, __last1,
| ^~~~~~~~~~~
| set_union
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «_OutputIterator set_union(_InputIterator1, _InputIterator1, _InputIterator2, _InputIterator2, _OutputIterator, _Compare)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5162:30: ошибка: «__set_union» is not a member of «std»; did you mean «set_union»?
5162 | return _GLIBCXX_STD_A::__set_union(__first1, __last1,
| ^~~~~~~~~~~
| set_union
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «_OutputIterator set_intersection(_InputIterator1, _InputIterator1, _InputIterator2, _InputIterator2, _OutputIterator)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5233:30: ошибка: «__set_intersection» is not a member of «std»; did you mean «set_intersection»?
5233 | return _GLIBCXX_STD_A::__set_intersection(__first1, __last1,
| ^~~~~~~~~~~~~~~~~~
| set_intersection
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «_OutputIterator set_intersection(_InputIterator1, _InputIterator1, _InputIterator2, _InputIterator2, _OutputIterator, _Compare)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5283:30: ошибка: «__set_intersection» is not a member of «std»; did you mean «set_intersection»?
5283 | return _GLIBCXX_STD_A::__set_intersection(__first1, __last1,
| ^~~~~~~~~~~~~~~~~~
| set_intersection
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «_OutputIterator set_difference(_InputIterator1, _InputIterator1, _InputIterator2, _InputIterator2, _OutputIterator)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5358:30: ошибка: «__set_difference» is not a member of «std»; did you mean «set_difference»?
5358 | return _GLIBCXX_STD_A::__set_difference(__first1, __last1,
| ^~~~~~~~~~~~~~~~
| set_difference
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «_OutputIterator set_difference(_InputIterator1, _InputIterator1, _InputIterator2, _InputIterator2, _OutputIterator, _Compare)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5410:30: ошибка: «__set_difference» is not a member of «std»; did you mean «set_difference»?
5410 | return _GLIBCXX_STD_A::__set_difference(__first1, __last1,
| ^~~~~~~~~~~~~~~~
| set_difference
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «_OutputIterator set_symmetric_difference(_InputIterator1, _InputIterator1, _InputIterator2, _InputIterator2, _OutputIterator)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5493:30: ошибка: «__set_symmetric_difference» is not a member of «std»; did you mean «set_symmetric_difference»?
5493 | return _GLIBCXX_STD_A::__set_symmetric_difference(__first1, __last1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
| set_symmetric_difference
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «_OutputIterator set_symmetric_difference(_InputIterator1, _InputIterator1, _InputIterator2, _InputIterator2, _OutputIterator, _Compare)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5546:30: ошибка: «__set_symmetric_difference» is not a member of «std»; did you mean «set_symmetric_difference»?
5546 | return _GLIBCXX_STD_A::__set_symmetric_difference(__first1, __last1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
| set_symmetric_difference
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «constexpr _ForwardIterator min_element(_ForwardIterator, _ForwardIterator)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5585:30: ошибка: «__min_element» is not a member of «std»; did you mean «min_element»?
5585 | return _GLIBCXX_STD_A::__min_element(__first, __last,
| ^~~~~~~~~~~~~
| min_element
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «constexpr _ForwardIterator min_element(_ForwardIterator, _ForwardIterator, _Compare)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5612:30: ошибка: «__min_element» is not a member of «std»; did you mean «min_element»?
5612 | return _GLIBCXX_STD_A::__min_element(__first, __last,
| ^~~~~~~~~~~~~
| min_element
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «constexpr _ForwardIterator max_element(_ForwardIterator, _ForwardIterator)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5649:30: ошибка: «__max_element» is not a member of «std»; did you mean «max_element»?
5649 | return _GLIBCXX_STD_A::__max_element(__first, __last,
| ^~~~~~~~~~~~~
| max_element
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «constexpr _ForwardIterator max_element(_ForwardIterator, _ForwardIterator, _Compare)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5676:30: ошибка: «__max_element» is not a member of «std»; did you mean «max_element»?
5676 | return _GLIBCXX_STD_A::__max_element(__first, __last,
| ^~~~~~~~~~~~~
| max_element
/usr/include/c++/14.1.1/bits/stl_algo.h: На глобальном уровне:
/usr/include/c++/14.1.1/bits/stl_algo.h:5685:9: ошибка: «initializer_list» was not declared in this scope; did you mean «std::initializer_list»?
5685 | min(initializer_list<_Tp> __l)
| ^~~~~~~~~~~~~~~~
| std::initializer_list
In file included from /usr/include/c++/14.1.1/bits/range_access.h:36,
from /usr/include/c++/14.1.1/string:53,
from /usr/include/c++/14.1.1/bits/locale_classes.h:40,
from /usr/include/c++/14.1.1/bits/ios_base.h:41,
from /usr/include/c++/14.1.1/ios:44,
from /usr/include/c++/14.1.1/ostream:40,
from /usr/include/c++/14.1.1/iostream:41,
from ../src/skel/crossplatform.h:130,
from ../src/core/re3.cpp:49:
/usr/include/c++/14.1.1/initializer_list:45:11: замечание: «std::initializer_list» declared here
45 | class initializer_list
| ^~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5685:29: ошибка: expected primary-expression before «>» token
5685 | min(initializer_list<_Tp> __l)
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:5685:31: ошибка: нет декларации «__l» в этой области видимости
5685 | min(initializer_list<_Tp> __l)
| ^~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5685:35: ошибка: expected «;» before «{» token
5685 | min(initializer_list<_Tp> __l)
| ^
| ;
5686 | {
| ~
/usr/include/c++/14.1.1/bits/stl_algo.h:5695:9: ошибка: редекларация «template<class _Tp, class _Compare> constexpr const _Tp min»
5695 | min(initializer_list<_Tp> __l, _Compare __comp)
| ^~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5685:5: замечание: предыдущая декларация «template<class _Tp> constexpr const _Tp min<_Tp>»
5685 | min(initializer_list<_Tp> __l)
| ^~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5695:9: ошибка: «initializer_list» was not declared in this scope; did you mean «std::initializer_list»?
5695 | min(initializer_list<_Tp> __l, _Compare __comp)
| ^~~~~~~~~~~~~~~~
| std::initializer_list
/usr/include/c++/14.1.1/initializer_list:45:11: замечание: «std::initializer_list» declared here
45 | class initializer_list
| ^~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5695:29: ошибка: expected primary-expression before «>» token
5695 | min(initializer_list<_Tp> __l, _Compare __comp)
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:5695:31: ошибка: нет декларации «__l» в этой области видимости
5695 | min(initializer_list<_Tp> __l, _Compare __comp)
| ^~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5695:45: ошибка: expected primary-expression before «__comp»
5695 | min(initializer_list<_Tp> __l, _Compare __comp)
| ^~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5695:52: ошибка: expected «;» before «{» token
5695 | min(initializer_list<_Tp> __l, _Compare __comp)
| ^
| ;
5696 | {
| ~
/usr/include/c++/14.1.1/bits/stl_algo.h:5705:9: ошибка: «initializer_list» was not declared in this scope; did you mean «std::initializer_list»?
5705 | max(initializer_list<_Tp> __l)
| ^~~~~~~~~~~~~~~~
| std::initializer_list
/usr/include/c++/14.1.1/initializer_list:45:11: замечание: «std::initializer_list» declared here
45 | class initializer_list
| ^~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5705:29: ошибка: expected primary-expression before «>» token
5705 | max(initializer_list<_Tp> __l)
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:5705:31: ошибка: нет декларации «__l» в этой области видимости
5705 | max(initializer_list<_Tp> __l)
| ^~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5705:35: ошибка: expected «;» before «{» token
5705 | max(initializer_list<_Tp> __l)
| ^
| ;
5706 | {
| ~
/usr/include/c++/14.1.1/bits/stl_algo.h:5715:9: ошибка: редекларация «template<class _Tp, class _Compare> constexpr const _Tp max»
5715 | max(initializer_list<_Tp> __l, _Compare __comp)
| ^~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5705:5: замечание: предыдущая декларация «template<class _Tp> constexpr const _Tp max<_Tp>»
5705 | max(initializer_list<_Tp> __l)
| ^~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5715:9: ошибка: «initializer_list» was not declared in this scope; did you mean «std::initializer_list»?
5715 | max(initializer_list<_Tp> __l, _Compare __comp)
| ^~~~~~~~~~~~~~~~
| std::initializer_list
/usr/include/c++/14.1.1/initializer_list:45:11: замечание: «std::initializer_list» declared here
45 | class initializer_list
| ^~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5715:29: ошибка: expected primary-expression before «>» token
5715 | max(initializer_list<_Tp> __l, _Compare __comp)
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:5715:31: ошибка: нет декларации «__l» в этой области видимости
5715 | max(initializer_list<_Tp> __l, _Compare __comp)
| ^~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5715:45: ошибка: expected primary-expression before «__comp»
5715 | max(initializer_list<_Tp> __l, _Compare __comp)
| ^~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5715:52: ошибка: expected «;» before «{» token
5715 | max(initializer_list<_Tp> __l, _Compare __comp)
| ^
| ;
5716 | {
| ~
/usr/include/c++/14.1.1/bits/stl_algo.h:5728:61: ошибка: «input_iterator_tag» не был декларирован
5728 | __sample(_InputIterator __first, _InputIterator __last, input_iterator_tag,
| ^~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5729:43: ошибка: «random_access_iterator_tag» не был декларирован
5729 | _RandomAccessIterator __out, random_access_iterator_tag,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «_RandomAccessIterator __sample(_InputIterator, _InputIterator, int, _RandomAccessIterator, int, _Size, _UniformRandomBitGenerator&&)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5732:30: ошибка: «uniform_int_distribution» не является именем типа
5732 | using __distrib_type = uniform_int_distribution<_Size>;
| ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5733:37: ошибка: «__distrib_type» не был декларирован
5733 | using __param_type = typename __distrib_type::param_type;
| ^~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5734:7: ошибка: нет декларации «__distrib_type» в этой области видимости
5734 | __distrib_type __d{};
| ^~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5744:37: ошибка: нет декларации «__param_type» в этой области видимости
5744 | const auto __k = __d(__g, __param_type{0, __pop_sz});
| ^~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h: На глобальном уровне:
/usr/include/c++/14.1.1/bits/stl_algo.h:5756:14: ошибка: «forward_iterator_tag» не был декларирован
5756 | forward_iterator_tag,
| ^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «_OutputIterator __sample(_ForwardIterator, _ForwardIterator, int, _OutputIterator, _Cat, _Size, _UniformRandomBitGenerator&&)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5760:30: ошибка: «uniform_int_distribution» не является именем типа
5760 | using __distrib_type = uniform_int_distribution<_Size>;
| ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5761:37: ошибка: «__distrib_type» не был декларирован
5761 | using __param_type = typename __distrib_type::param_type;
| ^~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5762:22: ошибка: «make_unsigned_t» не является именем типа
5762 | using _USize = make_unsigned_t<_Size>;
| ^~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5763:20: ошибка: «remove_reference_t» не является именем типа
5763 | using _Gen = remove_reference_t<_UniformRandomBitGenerator>;
| ^~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5764:25: ошибка: «common_type_t» не является именем типа
5764 | using __uc_type = common_type_t<typename _Gen::result_type, _USize>;
| ^~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5769:7: ошибка: нет декларации «__distrib_type» в этой области видимости
5769 | __distrib_type __d{};
| ^~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5776:13: ошибка: «__uc_type» не является именем типа
5776 | const __uc_type __urngrange = __g.max() - __g.min();
| ^~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5777:11: ошибка: нет декларации «__urngrange» в этой области видимости
5777 | if (__urngrange / __uc_type(__unsampled_sz) >= __uc_type(__unsampled_sz))
| ^~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5783:21: ошибка: «pair» не является именем типа
5783 | const pair<_Size, _Size> __p =
| ^~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5787:19: ошибка: «__p» was not declared in this scope; did you mean «__n»?
5787 | if (__p.first < __n)
| ^~~
| __n
/usr/include/c++/14.1.1/bits/stl_algo.h:5798:19: ошибка: «__p» was not declared in this scope; did you mean «__n»?
5798 | if (__p.second < __n)
| ^~~
| __n
/usr/include/c++/14.1.1/bits/stl_algo.h:5811:22: ошибка: нет декларации «__param_type» в этой области видимости
5811 | if (__d(__g, __param_type{0, --__unsampled_sz}) < __n)
| ^~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h: In function «_SampleIterator sample(_PopulationIterator, _PopulationIterator, _SampleIterator, _Distance, _UniformRandomBitGenerator&&)»:
/usr/include/c++/14.1.1/bits/stl_algo.h:5835:11: ошибка: «__or_» was not declared in this scope; did you mean «std::__or_»?
5835 | __or_<is_convertible<__pop_cat, forward_iterator_tag>,
| ^~~~~
| std::__or_
/usr/include/c++/14.1.1/type_traits:193:12: замечание: «std::__or_» declared here
193 | struct __or_
| ^~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5835:17: ошибка: «is_convertible» was not declared in this scope; did you mean «std::is_convertible»?
5835 | __or_<is_convertible<__pop_cat, forward_iterator_tag>,
| ^~~~~~~~~~~~~~
| std::is_convertible
/usr/include/c++/14.1.1/type_traits:1498:12: замечание: «std::is_convertible» declared here
1498 | struct is_convertible
| ^~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5835:41: ошибка: expected primary-expression before «,» token
5835 | __or_<is_convertible<__pop_cat, forward_iterator_tag>,
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:5835:43: ошибка: «forward_iterator_tag» was not declared in this scope; did you mean «std::forward_iterator_tag»?
5835 | __or_<is_convertible<__pop_cat, forward_iterator_tag>,
| ^~~~~~~~~~~~~~~~~~~~
| std::forward_iterator_tag
/usr/include/c++/14.1.1/bits/stl_iterator_base_types.h:99:10: замечание: «std::forward_iterator_tag» declared here
99 | struct forward_iterator_tag : public input_iterator_tag { };
| ^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5835:64: ошибка: expected primary-expression before «,» token
5835 | __or_<is_convertible<__pop_cat, forward_iterator_tag>,
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:5835:64: ошибка: expected «)» before «,» token
5835 | __or_<is_convertible<__pop_cat, forward_iterator_tag>,
| ^
| )
/usr/include/c++/14.1.1/bits/stl_algo.h:5834:20: замечание: to match this «(»
5834 | static_assert(
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:5840:21: ошибка: «is_integral» was not declared in this scope; did you mean «std::is_integral»?
5840 | static_assert(is_integral<_Distance>::value,
| ^~~~~~~~~~~
| std::is_integral
/usr/include/c++/14.1.1/type_traits:461:12: замечание: «std::is_integral» declared here
461 | struct is_integral
| ^~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5840:42: ошибка: expected primary-expression before «>» token
5840 | static_assert(is_integral<_Distance>::value,
| ^
/usr/include/c++/14.1.1/bits/stl_algo.h:5840:45: ошибка: «::value» не был декларирован
5840 | static_assert(is_integral<_Distance>::value,
| ^~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5843:16: ошибка: expected nested-name-specifier before «iterator_traits»
5843 | typename iterator_traits<_PopulationIterator>::difference_type __d = __n;
| ^~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5843:16: ошибка: expected «(» before «iterator_traits»
5843 | typename iterator_traits<_PopulationIterator>::difference_type __d = __n;
| ^~~~~~~~~~~~~~~
| (
/usr/include/c++/14.1.1/bits/stl_algo.h:5845:9: ошибка: «__sample» is not a member of «std»; did you mean «__sample»?
5845 | __sample(__first, __last, __pop_cat{}, __out, __samp_cat{}, __d,
| ^~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5755:5: замечание: «__sample» declared here
5755 | __sample(_ForwardIterator __first, _ForwardIterator __last,
| ^~~~~~~~
/usr/include/c++/14.1.1/bits/stl_algo.h:5845:69: ошибка: «__d» was not declared in this scope; did you mean «__n»?
5845 | __sample(__first, __last, __pop_cat{}, __out, __samp_cat{}, __d,
| ^~~
| __n
/usr/include/c++/14.1.1/bits/stl_algo.h: На глобальном уровне:
/usr/include/c++/14.1.1/bits/stl_algo.h:5852:1: ошибка: expected declaration before «}» token
5852 | } // namespace std
| ^
../src/extras/ini_parser.hpp: В lambda функции:
../src/extras/ini_parser.hpp:206:94: предупреждение: «constexpr std::unary_negate<_Predicate> std::not1(const _Predicate&) [with _Predicate = function<int(int)>]» устарело: use 'std::not_fn' instead [-Wdeprecated-declarations]
206 | .erase(s.begin(), std::find_if(s.begin(), s.end(), std::not1(std::function<int(int)>(::isspace))));
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14.1.1/string:49:
/usr/include/c++/14.1.1/bits/stl_function.h:1043:5: замечание: объявлено здесь
1043 | not1(const _Predicate& __pred)
| ^~~~
../src/extras/ini_parser.hpp:208:85: предупреждение: «constexpr std::unary_negate<_Predicate> std::not1(const _Predicate&) [with _Predicate = function<int(int)>]» устарело: use 'std::not_fn' instead [-Wdeprecated-declarations]
208 | s.erase(std::find_if(s.rbegin(), s.rend(), std::not1(std::function<int(int)>(::isspace))).base(), s.end());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_function.h:1043:5: замечание: объявлено здесь
1043 | not1(const _Predicate& __pred)
| ^~~~
../src/extras/ini_parser.hpp: В конкретизации «bool linb::basic_ini<CharT, StringType, KeyContainer, SectionContainer>::read_file(const char_type*) [with CharT = char; StringType = std::__cxx11::basic_string<char>; KeyContainer = std::map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, std::less<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > > >; SectionContainer = std::map<std::__cxx11::basic_string<char>, std::map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, std::less<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > > >, std::less<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, std::map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, std::less<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > > > > > >; char_type = char]»:
../src/extras/ini_parser.hpp:303:24: требуемый из «bool linb::basic_ini<CharT, StringType, KeyContainer, SectionContainer>::load_file(const char_type*) [with CharT = char; StringType = std::__cxx11::basic_string<char>; KeyContainer = std::map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, std::less<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > > >; SectionContainer = std::map<std::__cxx11::basic_string<char>, std::map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, std::less<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > > >, std::less<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, std::map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, std::less<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > > > > > >; char_type = char]»
303 | return read_file(filename);
| ^~~~~~~~~
../src/core/re3.cpp:471:20: required from here
471 | if (!cfg.load_file("reVC.ini"))
| ~~~~~~~~~~~~~^~~~~~~~~~~~
../src/extras/ini_parser.hpp:206:94: предупреждение: «constexpr std::unary_negate<_Predicate> std::not1(const _Predicate&) [with _Predicate = function<int(int)>]» устарело: use 'std::not_fn' instead [-Wdeprecated-declarations]
206 | .erase(s.begin(), std::find_if(s.begin(), s.end(), std::not1(std::function<int(int)>(::isspace))));
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_function.h:1043:5: замечание: объявлено здесь
1043 | not1(const _Predicate& __pred)
| ^~~~
../src/extras/ini_parser.hpp:206:94: предупреждение: «constexpr std::unary_negate<_Predicate> std::not1(const _Predicate&) [with _Predicate = function<int(int)>]» устарело: use 'std::not_fn' instead [-Wdeprecated-declarations]
206 | .erase(s.begin(), std::find_if(s.begin(), s.end(), std::not1(std::function<int(int)>(::isspace))));
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_function.h:1043:5: замечание: объявлено здесь
1043 | not1(const _Predicate& __pred)
| ^~~~
../src/extras/ini_parser.hpp:206:94: предупреждение: «constexpr std::unary_negate<_Predicate> std::not1(const _Predicate&) [with _Predicate = function<int(int)>]» устарело: use 'std::not_fn' instead [-Wdeprecated-declarations]
206 | .erase(s.begin(), std::find_if(s.begin(), s.end(), std::not1(std::function<int(int)>(::isspace))));
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_function.h:1043:5: замечание: объявлено здесь
1043 | not1(const _Predicate& __pred)
| ^~~~
../src/extras/ini_parser.hpp:208:85: предупреждение: «constexpr std::unary_negate<_Predicate> std::not1(const _Predicate&) [with _Predicate = function<int(int)>]» устарело: use 'std::not_fn' instead [-Wdeprecated-declarations]
208 | s.erase(std::find_if(s.rbegin(), s.rend(), std::not1(std::function<int(int)>(::isspace))).base(), s.end());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_function.h:1043:5: замечание: объявлено здесь
1043 | not1(const _Predicate& __pred)
| ^~~~
../src/extras/ini_parser.hpp:208:85: предупреждение: «constexpr std::unary_negate<_Predicate> std::not1(const _Predicate&) [with _Predicate = function<int(int)>]» устарело: use 'std::not_fn' instead [-Wdeprecated-declarations]
208 | s.erase(std::find_if(s.rbegin(), s.rend(), std::not1(std::function<int(int)>(::isspace))).base(), s.end());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_function.h:1043:5: замечание: объявлено здесь
1043 | not1(const _Predicate& __pred)
| ^~~~
../src/extras/ini_parser.hpp:208:85: предупреждение: «constexpr std::unary_negate<_Predicate> std::not1(const _Predicate&) [with _Predicate = function<int(int)>]» устарело: use 'std::not_fn' instead [-Wdeprecated-declarations]
208 | s.erase(std::find_if(s.rbegin(), s.rend(), std::not1(std::function<int(int)>(::isspace))).base(), s.end());
| ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14.1.1/bits/stl_function.h:1043:5: замечание: объявлено здесь
1043 | not1(const _Predicate& __pred)
| ^~~~
make[1]: *** [reVC.make:1056: obj/linux-x86-librw_gl3_glfw-oal/Debug/reVC/re3.o] Ошибка 1
make: *** [Makefile:78: reVC] Ошибка 2