-
-
Notifications
You must be signed in to change notification settings - Fork 537
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
compilation issue: no member named 'construct' #1611
Comments
I'm getting the same error. Even a simple test program that just includes It boils down to the implementation of the sol2/include/sol/optional_implementation.hpp Line 2189 in e8e122e
At first glance it's strange why this ever worked. The Some further tests show that clang < 19 doesn't actually test for the existence of the member functions being called inside another member function of a templated type. Clang 19 changed that. This example might be instructive: template<int i>
struct bar {
void baz() {
this->foo();
}
};
int main(int argc, char**argv){
bar<1> a;
// uncommenting the code below makes it fail on every compiler
// On clang >= 19 it even fails without the explicit call to baz but it works on g++ and clang < 19.
//a.baz();
return 0;
} So I think this just worked before because As a side note: The return type of |
#1606 fixes it for me. It seems that |
Thanks @tukss! Hope the fix gets into main |
1606 merged - confirming issue resolved! |
Hi, I'm seeing a new error in compilation:
compiler:
CMAKE_C_COMPILER: D:/a/Light.vn-core/Light.vn-core/emsdk/upstream/emscripten/emcc.bat
The text was updated successfully, but these errors were encountered: