Previously, each job would overwrite the -MJ file. This didn't quite work for Clang invocations with multiple architectures, which got fixed in D121997 by always appending to the -MJ file. That's not correct either, since the file would grow indefinitely on subsequent Clang invocations. This patch ensures the driver always removes the file before jobs fill it in by appending.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
Thanks for the review!
clang/test/Driver/compilation_database_multiarch.c | ||
---|---|---|
15 | It can, but it's not really strict. It will match an empty line, but that might be followed by some non-empty lines, which I'd like this test to explicitly disallow. |
clang/test/Driver/compilation_database_multiarch.c | ||
---|---|---|
15 | OK. I think CHECk-NOT: {{.}} works as well once the last byte before \n is matched. |
Comment Actions
There are now several JSON fragments per file? Previously, there was one fragment per file.
This will fail now:
https://sarcasm.github.io/notes/dev/compilation-database.html#clang
CHECK-EMPTY can match EOF.