[clang-tools-extra] Re-add path normalization that was removed in 315561c86778 (PR #118718)
Mike Hommey via cfe-commits
cfe-commits at lists.llvm.org
Wed Dec 4 17:44:06 PST 2024
glandium wrote:
I found what's going on. It kind of worked by chance before in our setup, but that somehow shows an existing flaw in the run-clang-tidy script.
So, our compilation database contains absolute paths with forward slashes. And the paths we pass to the command line are also with forward slashes.
This worked fine because `make_absolute` had a shortcut that didn't alter the path if it was already absolute. Then `file_name_re` would match properly.
Now that `abspath` is always used, the paths in `files` are all with backslashes (because it's Windows, and path normalization turns the forward slashes into backslashes). But with `args.files` containing paths with forward slashes, `file_name_re` doesn't match anymore.
But passing paths with backslashes in paths also doesn't work (and that's not new to https://github.com/llvm/llvm-project/commit/315561c867784ebd9ca387e94ea6597918e7cc1c), because of how these paths are used verbatim in `file_name_re` without escaping. But that's because what's passed in is regexps, so this makes sense.
https://github.com/llvm/llvm-project/pull/118718
More information about the cfe-commits
mailing list