forked from OSchip/llvm-project
327894859c
Jenkins sometimes starts a new working directory by appending @2 (or incrementing the number if the @n suffix is already there). This causes several clang tests to fail as: s@INPUT_DIR@%/S/Inputs@g gets expanded to the invalid: s@INPUT_DIR@/path/to/workdir@2/Inputs@g ~~~~~~~~~~ where the part marked with ~'s is interpreted as the flags. These are invalid and the test fails. Previous fixes simply exchanged the @ character for another like | but that's just moving the problem. Address it by adding an expansion that escapes the @ character we're using as a delimiter as well as other magic characters in the replacement of sed's s@@@. There's still room for expansions to cause trouble though. One I ran into while testing this was that having a directory called foo@bar causes lots of `CHECK-NOT: foo` directives to match. There's also things like directories containing `\1` |
||
---|---|---|
.. | ||
Inputs | ||
external-names.c | ||
framework-import.m | ||
implicit-include.c | ||
include-mixed-real-and-virtual.c | ||
include-real-from-virtual.c | ||
include-virtual-from-real.c | ||
include.c | ||
incomplete-umbrella.m | ||
module-import.m | ||
module_missing_vfs.m | ||
parse-errors.c | ||
real-path-found-first.m | ||
relative-path.c | ||
subframework-symlink.m | ||
test_nonmodular.c | ||
umbrella-framework-import-skipnonexist.m | ||
umbrella-mismatch.m | ||
vfsroot-include.c | ||
vfsroot-module.m | ||
vfsroot-with-overlay.c |