-
Notifications
You must be signed in to change notification settings - Fork 255
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 error for complex floating point operations in GraphBLAS with clang-cl
#751
Comments
It is related to |
See #754 where the order of checks is already changed. Clang in MSVC-compatibility mode should be treated like MSVC in (almost) every aspect. Not just for this particular part of the code. |
Clang should not be treated as MSVC (since it has OpenMP 5.1 and there are many differences for the compilers). I can use clang grammars in clang-cl mode because the only problem is the std libs and headers of Windows SDK are used by both clang and clang-cl. I don't know if it will have a problem when using gnu-like clang on Windows, but logically we only need to include the proper headers and keep other clang Marcos unchanged. |
The availability of OpenMP and its version is checked independently on the used compiler. Which "many differences" are you referring to? |
For C++, standard support will be very different. For C, language extensions are different, |
I haven't checked exactly how those macros are used in GraphBLAS. But when it comes to standard support, I agree that feature tests would probably be better than deciding based to the compiler vendor. The same goes for language extensions like symbol attributes. Imho, it is a bit confusing that GraphBLAS has that extra step that translates preprocessor macros that would clearly indicate what would need to be distinguished here to other preprocessor macros that are based on compiler vendor names. But I guess that is a different issue to the one that is reported here. I'll try and come up with feature tests for some of the decisions that are currently based on vendor names. But imho that doesn't need to hold back a fix for this issue. |
I pushed an additional commit to #754 that adds a feature test for how complex floating point numbers are handled by the used compiler. |
This is fixed now, in the dev2 branch, correct? |
Yes, the original issue is fixed and covered in CI. |
Describe the bug
Building GraphBLAS with
clang-cl
fails with errors like the following:To Reproduce
Configure with the following using a MSVC build environment (might need to be adjusted depending on where the BLAS libraries are installed):
Expected behavior
GraphBLAS builds without errors.
Desktop (please complete the following information):
dev2
The text was updated successfully, but these errors were encountered: