i’ve run into a weird compilation issue at work: when clang is writing dependency files for c++ code, a page of nulls will be written to the file overwriting a few bytes of the contents. the placement is always a very clean base16 number, as is the number of null bytes.

it doesn’t happen to the same file each time and the only way to detect it so far has been the parser failure on the contents of the affected dependency file. the position that the nulls get written at is always at least 0x1000 from start; first 12 bits are clear, 23-12 are mixed


honestly this is one of the most unusual compilation bugs i’ve ever seen. the one full set of data i have for it right now has 4096 bytes of nulls as a replacement of 4 bytes of ascii text. i might spend this week digging through llvm source code to see if i can trace it or not.

Sign in to participate in the conversation

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!