Skip to content

Commit

Permalink
[lld][MachO] Fix warning while building for wasm (llvm#120889)
Browse files Browse the repository at this point in the history
While building clang & lld against emscripten for wasm, I see the
following
```
 │ │ /home/runner/work/recipes/recipes/output/bld/rattler-build_llvm_1734801187/work/lld/MachO/SyntheticSections.cpp:2075:25: warning: comparison of integers of
 │ │  different signs: 'long' and 'const uint32_t' (aka 'const unsigned int') [-Wsign-compare]
 │ │  2075 |   assert(buf - bufStart == sectionSize &&
 │ │       |          ~~~~~~~~~~~~~~ ^  ~~~~~~~~~~~
 │ │ $BUILD_PREFIX/opt/emsdk/upstream/emscripten/cache/sysroot/include/assert.h:8:28: note: expanded from macro 'assert'
 │ │     8 | #define assert(x) ((void)((x) || (__assert_fail(#x, __FILE__, __LINE__, __func__),0)))
 │ │       |                            ^
 ```
 
 Casting `sectionSize` should be enough I think
  • Loading branch information
anutosh491 authored Jan 5, 2025
1 parent 3321c2d commit ba93ecc
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions lld/MachO/SyntheticSections.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2079,12 +2079,12 @@ void ObjCMethListSection::finalize() {
void ObjCMethListSection::writeTo(uint8_t *bufStart) const {
uint8_t *buf = bufStart;
for (const ConcatInputSection *isec : inputs) {
assert(buf - bufStart == long(isec->outSecOff) &&
assert(buf - bufStart == std::ptrdiff_t(isec->outSecOff) &&
"Writing at unexpected offset");
uint32_t writtenSize = writeRelativeMethodList(isec, buf);
buf += writtenSize;
}
assert(buf - bufStart == sectionSize &&
assert(buf - bufStart == std::ptrdiff_t(sectionSize) &&
"Written size does not match expected section size");
}

Expand Down

0 comments on commit ba93ecc

Please sign in to comment.