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
* `SPIRVOptions.h` - one of the fields of this struct (signaturePacking)
wasn't getting initialized before the struct's assignment operator was
used. This resulted in the uninitialized fields being copied, which is
UB. Although a more surgical fix is possible, it seemed better to just
ensure all fields are initialized, setting a good precedent if any new
fields are added.
* `FrontendOptions.h` - uninitialized field
* `APInt.cpp` - left shift of a signed integer
* `Triple.h` - uninitialized field
* `VirtualFileSystem.h` - uninitialized field
* `Lookup.h` - uninitialized field
* `MemoryBuffer.cpp` - avoid memcpy from a null dest (UB even if size is
0)
Methodology: had copilot CLI get a baseline running the tests under
ubsan, categorize the failures and fix them, and verify that gcc-14 and
clang 18 are now ubsan clan.
---------
Co-authored-by: Copilot <[email protected]>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
0 commit comments