You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[clang] Fix remove{CVR|Fast}Qualifiers with 64-bit Qualifiers::Mask
After llvm#84384, `Qualifiers::Mask` becomes 64-bit. So, operations like
`Mask &= ~U32` where `U32` is `unsigned` produce undesirable results
since higher 32 bits of `Mask` become zeroed while they should be
preserved. Fix that by explicitly casting `unsigned` values to `uint64_t`
in such operations. Signatures of fixed functions are intentionally left
intact instead of changing the argument itself to `uint64_t` to keep things
consistent with other functions working with the same qualifiers and to
emphasize that 64-bit masks should not be used for these types of
qualifiers.
0 commit comments