-
Notifications
You must be signed in to change notification settings - Fork 78
Open
Labels
C++MacIssues that appear specifically on Mac platformIssues that appear specifically on Mac platformworkaroundThe issue has a workaroundThe issue has a workaround
Description
Current Behavior
YDK core test target (ydk_core_test) compilation in MacOS 14 or 13 fails with this errors:
[ 93%] Building CXX object tests/CMakeFiles/ydk_core_test.dir/main.cpp.o
In file included from /Users/ygorelik/github/ydk-gen/sdk/cpp/core/tests/main.cpp:2:
In file included from /Users/ygorelik/github/ydk-gen/sdk/cpp/core/src/spdlog/spdlog.h:13:
In file included from /Users/ygorelik/github/ydk-gen/sdk/cpp/core/src/spdlog/common.h:8:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/include/c++/v1/string:622:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/include/c++/v1/string_view:1059:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/include/c++/v1/algorithm:1893:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/include/c++/v1/__algorithm/ranges_sample.h:13:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/include/c++/v1/__algorithm/sample.h:18:
/Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/include/c++/v1/__random/uniform_int_distribution.h:237:5: error: static assertion failed due to requirement '__libcpp_random_is_valid_urng<Catch::RandomNumberGenerator, void>::value':
static_assert(__libcpp_random_is_valid_urng<_URNG>::value, "");
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/include/c++/v1/__algorithm/shuffle.h:154:35: note: in instantiation of function template specialization 'std::uniform_int_distribution<long>::operator()<Catch::RandomNumberGenerator>' requested here
difference_type __i = __uid(__g, _Pp(0, __d));
^
/Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/include/c++/v1/__algorithm/shuffle.h:166:14: note: in instantiation of function template specialization 'std::__shuffle<std::_ClassicAlgPolicy, std::__wrap_iter<Catch::TestCase *>, std::__wrap_iter<Catch::TestCase *>, Catch::RandomNumberGenerator &>' requested here
(void)std::__shuffle<_ClassicAlgPolicy>(
^
/Users/ygorelik/github/ydk-gen/sdk/cpp/core/src/catch.hpp:6906:18: note: in instantiation of function template specialization 'std::shuffle<std::__wrap_iter<Catch::TestCase *>, Catch::RandomNumberGenerator &>' requested here
std::shuffle( vector.begin(), vector.end(), rng );
^
/Users/ygorelik/github/ydk-gen/sdk/cpp/core/src/catch.hpp:6924:44: note: in instantiation of function template specialization 'Catch::RandomNumberGenerator::shuffle<std::vector<Catch::TestCase>>' requested here
RandomNumberGenerator::shuffle( sorted );
^
1 error generated.
make[2]: *** [tests/CMakeFiles/ydk_core_test.dir/main.cpp.o] Error 1
make[1]: *** [tests/CMakeFiles/ydk_core_test.dir/all] Error 2
make: *** [all] Error 2
Note that C++ compiler fails in the internal MacOS include file:
/Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk/usr/include/c++/v1/__random/uniform_int_distribution.h
Steps to Reproduce
Manually compile YDK core library and unit tests. That would create core unit test and sample executables with debug symbols.
cd $YDK_HOME
mkdir -p sdk/cpp/core/build
cd sdk/cpp/core/build && cmake ..
make
System Information
macOS Sonoma (14.4)
YDK 0.8.6.6
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
C++MacIssues that appear specifically on Mac platformIssues that appear specifically on Mac platformworkaroundThe issue has a workaroundThe issue has a workaround