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
[NFC] Address compiler warnings: C4146 - A 'grab bag' of remaining instances (microsoft#7574)
## Fix C4146 warnings: unary minus on unsigned types
Fixes several remaining MSVC C4146 warnings where unary minus was
applied to unsigned integers.
This should be the last PR containing MSVC C4146 warning fixes. I will
remove the disablement of the warning as an error in a subsequent PR
once the other pending PRs are completed.
**Changes:**
- Replace `-(unsigned_value)` with `~unsigned_value + 1` for offset
calculations
- Use `-1LL` instead of `-1ULL` where signed values are intended
- Fix alignment padding calculation to avoid unsigned negation
**Files changed:**
- CoverageMappingGen.cpp, Lexer.cpp, Rewriter.cpp: Use two's complement
for safe unsigned negation in offset calculations
- ItaniumCXXABI.cpp: Use signed literal for ABI-compliant null member
pointer (-1)
- ExprConstant.cpp: Replace `-1ULL` with `~0ULL` for bitmasks
- CodeGenMapTable.cpp: Fix sentinel value generation
All changes are mathematically equivalent and preserve existing behavior
while eliminating compiler warnings.
Addresses microsoft#7573
0 commit comments