-
Notifications
You must be signed in to change notification settings - Fork 160
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
Build issue on certain MSVC in Cantera. #724
Comments
Thanks, @1uc ... trying to debug a couple of other quirks, I updated/fixed our build scripts (unfortunately we're using a different build system - The latest runner we're using does have a system installation of 2.7.0 from conda, which produces the following output for MSVC 14.1, which references line numbers.
Update: after tweaking the CI configuration, you can see an example for a failing CI here (different from before, it now fails at the configuration step, which is by design): PS: Some of my other issues go back to #726, which created unexpected behavior as I was testing with both git submodule and a locally installed conda package. On the positive side, after fixing the relative import, I do not see any additional HighFive-related failures on Cantera on any of our build systems other than the one for MSVC 14.1 (which is the oldest version we're able to test). |
@1uc ... tried a CI run compiling with what is slated for 2.7.1 thus far, and am still getting the same failure as the one on top. Unfortunately, there's no additional output in the error stack. |
I have a suspicion why this is. We (in order to appease a compiler) removed some friend declarations in this commit: Essentially, we're avoiding a few of these
We should try to put them back conditionally for MSVC only. |
Newer MSVC versions (2019 and later, i.e. 14.2 and 14.3) work as far as I can tell. MSVC toolset 14.1 is the one with issues on our end, but I'm not able to test older versions. |
@ischoegl It seems to be this compiler bug: If we look at
The error doesn't manifest with We can get CI to fail by forcing |
Confirming that we’re using the PS: just noticed #728 … |
I think you beat me to it, but yes, we can make the issue go away: I'll discuss with the other developers to see if we want to keep the workaround. |
👍 ... fwiw, I guess it's a function on how many people will try to use MSVC toolset 14.1 together with the As an aside, it would be interesting to see whether a GH |
We've merged #728 into The name of the macro changed to |
@ischoegl Version 2.7.1 has been created. I'll close the issue since, most likely, it's been fixed. Please feel free to re-open or open a different issue as needed. |
Thanks! While I'm relatively certain that all issues are resolved, I'll have to wait for the 2.7.1 conda packages to have final confirmation. Again, the HighFive team's efforts are truly appreciated! |
@1uc ... I am confirming that conda packages for 2.7.1 resolve everything on our side. Again, thanks for your assistance! |
The CI of https://github.com/Cantera uncovered a build issue for certain versions of MSVC. Some of the discussion started in #713.
The link to the failing CI is:
https://github.com/Cantera/cantera/actions/runs/4588940048/jobs/8103492434
It reports a
Which smell like SFINAE to check if something HighFive related can be converted to a string. While doing so it fails because the ctor of
HighFive::Object
is protected. To be investigated further.The text was updated successfully, but these errors were encountered: