-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Clang in VS 17.7p1 doesn't grok _addcarry_u64
/_subborrow_u64
#3713
Comments
Compiling this file (from DevCom-10369658): #include <cstddef>
struct X { int a; int b; };
static_assert(offsetof(X, b) == 4); with
The vs17.7p1 Clang isn't including its override headers??!? |
Aha! The bug is in the above: Clang 16 now expects to find its includes in |
The layout problem has been fixed for VS 2022 v17.7 Preview 3. I'm going to leave this issue open as a reminder for us to remove the workarounds when 17.7p3 ships. |
The compiler is emitting calls as if these were separately-compiled functions instead of intrinsics that it should expand inline. This is not the case when installing LLVM 16.0.1 directly, so I suspect some kind of corruption of the VS in-box Clang. We need to figure out what's going on here, and communicate with the MS-internal folks who handle the in-box Clang to get it straightened out before 17.7 ships.
EDIT:
This bug has the same root cause as DevCom-10369658/VSO-1822920 "Clang 16.0 offsetof behavior difference". The issue is in how VS packages LLVM.
The text was updated successfully, but these errors were encountered: