DavidSpickett wrote: After this change the test labda.cpp is failing on Linaro's Windows on Arm clang bots. They were stuck for other reasons and only just got back up to date, so here's a new build showing the failure: https://lab.llvm.org/buildbot/#/builders/161/builds/6473 ``` cat C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm-project\clang\test\Interpreter\lambda.cpp | c:\users\tcwg\llvm-worker\clang-arm64-windows-msvc\build\bin\clang-repl.exe -Xcc -Xclang -Xcc -verify -Xcc -O2 | c:\users\tcwg\llvm-worker\clang-arm64-windows-msvc\build\bin\filecheck.exe C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm-project\clang\test\Interpreter\lambda.cpp # executed command: cat 'C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm-project\clang\test\Interpreter\lambda.cpp' # executed command: 'c:\users\tcwg\llvm-worker\clang-arm64-windows-msvc\build\bin\clang-repl.exe' -Xcc -Xclang -Xcc -verify -Xcc -O2 # .---command stderr------------ # | error: Parsing failed. # `----------------------------- # executed command: 'c:\users\tcwg\llvm-worker\clang-arm64-windows-msvc\build\bin\filecheck.exe' 'C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm-project\clang\test\Interpreter\lambda.cpp' # .---command stderr------------ # | C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm-project\clang\test\Interpreter\lambda.cpp:26:11: error: CHECK: expected string not found in input # | // CHECK: x = 42 # | ^ # | <stdin>:4:28: note: scanning from here # | clang-repl> clang-repl> TWO # | ^ # | <stdin>:5:9: note: possible intended match here # | clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> # | ^ # | # | Input file: <stdin> # | Check file: C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm-project\clang\test\Interpreter\lambda.cpp # | # | -dump-input=help explains the following input dump. # | # | Input was: # | <<<<<< # | 1: x = 42 # | 2: clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> ONE # | 3: clang-repl> clang-repl> TWO # | 4: clang-repl> clang-repl> TWO # | check:26'0 X error: no match found # | 5: clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> # | check:26'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # | check:26'1 ? possible intended match # | >>>>>> # `----------------------------- # error: command failed with exit status: 1 -- ``` I've confirmed locally that the test passed before this change.
The first RUN line is ok: ``` C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build>cat C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\clang\test\Interpreter\lambda.cpp | .\bin\clang-repl.exe clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> ONE clang-repl> clang-repl> TWO clang-repl> clang-repl> TWO clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> In file included from <<< inputs >>>:1: input_line_21:1:17: error: non-local lambda expression cannot have a capture-default 1 | auto capture = [&]() { return x * 2; }; | ^ error: Parsing failed. clang-repl> clang-repl> clang-repl> x = 42 clang-repl> clang-repl> clang-repl> ``` The second one fails to parse the lambda: ``` C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build>cat C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\clang\test\Interpreter\lambda.cpp | .\bin\clang-repl.exe -Xcc -Xclang -Xcc -verify -Xcc -O2 clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> ONE clang-repl> clang-repl> TWO clang-repl> clang-repl> TWO clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> clang-repl> error: Parsing failed. clang-repl> clang-repl> clang-repl> x = 42 clang-repl> clang-repl> clang-repl> ``` (also the repeated `clang-repl>` is strange but maybe that is expected?) How can I debug this further, is there a way to enable some verbose parsing / verification? (seems more likely that verification is actually the failing part) https://github.com/llvm/llvm-project/pull/127467 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits