[clang] [llvm] Fix Windows EH IP2State tables (remove +1 bias) (PR #144745)

Jan Svoboda via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 22 09:47:19 PDT 2025


jansvoboda11 wrote:

This is causing failures on my macOS machine that uses paths starting with "/Users":
```
FAIL: Clang :: CodeGenCXX/microsoft-abi-eh-disabled.cpp (21998 of 22004)
******************** TEST 'Clang :: CodeGenCXX/microsoft-abi-eh-disabled.cpp' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/Users/Jan/Code/org-llvm/build/release/bin/clang --driver-mode=cl -c --target=x86_64-windows-msvc /EHs-c- -O2 /GS-    -Xclang=-import-call-optimization    /clang:-S /clang:-o- /Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-disabled.cpp 2>&1    | /Users/Jan/Code/org-llvm/build/release/bin/FileCheck /Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-disabled.cpp # RUN: at line 1
+ /Users/Jan/Code/org-llvm/build/release/bin/clang --driver-mode=cl -c --target=x86_64-windows-msvc /EHs-c- -O2 /GS- -Xclang=-import-call-optimization /clang:-S /clang:-o- /Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-disabled.cpp
+ /Users/Jan/Code/org-llvm/build/release/bin/FileCheck /Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-disabled.cpp
/Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-disabled.cpp:38:17: error: CHECK-LABEL: expected string not found in input
// CHECK-LABEL: .def "?normal_has_regions@@YAXXZ"
                ^
<stdin>:1:1: note: scanning from here
clang: warning: '/Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-disabled.cpp' treated as the '/U' option [-Wslash-u-filename]
^
<stdin>:2:46: note: possible intended match here
clang: note: use '--' to treat subsequent arguments as filenames
                                             ^

Input file: <stdin>
Check file: /Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-disabled.cpp

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            1: clang: warning: '/Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-disabled.cpp' treated as the '/U' option [-Wslash-u-filename] 
label:38'0     X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
            2: clang: note: use '--' to treat subsequent arguments as filenames 
label:38'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
label:38'1                                                  ?                    possible intended match
            3: clang: error: no input files 
label:38'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>>>>

--

********************
FAIL: Clang :: CodeGenCXX/microsoft-abi-eh-ip2state.cpp (21999 of 22004)
******************** TEST 'Clang :: CodeGenCXX/microsoft-abi-eh-ip2state.cpp' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/Users/Jan/Code/org-llvm/build/release/bin/clang --driver-mode=cl -c --target=x86_64-windows-msvc -O2 /EHsc /GS-    -Xclang=-import-call-optimization    /clang:-S /clang:-o- /Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-ip2state.cpp 2>&1    | /Users/Jan/Code/org-llvm/build/release/bin/FileCheck /Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-ip2state.cpp # RUN: at line 1
+ /Users/Jan/Code/org-llvm/build/release/bin/clang --driver-mode=cl -c --target=x86_64-windows-msvc -O2 /EHsc /GS- -Xclang=-import-call-optimization /clang:-S /clang:-o- /Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-ip2state.cpp
+ /Users/Jan/Code/org-llvm/build/release/bin/FileCheck /Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-ip2state.cpp
/Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-ip2state.cpp:38:17: error: CHECK-LABEL: expected string not found in input
// CHECK-LABEL: .def "?case_calls_dll_import@@YAXXZ"
                ^
<stdin>:1:1: note: scanning from here
clang: warning: '/Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-ip2state.cpp' treated as the '/U' option [-Wslash-u-filename]
^
<stdin>:1:30: note: possible intended match here
clang: warning: '/Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-ip2state.cpp' treated as the '/U' option [-Wslash-u-filename]
                             ^

Input file: <stdin>
Check file: /Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-ip2state.cpp

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            1: clang: warning: '/Users/Jan/Code/org-llvm/clang/test/CodeGenCXX/microsoft-abi-eh-ip2state.cpp' treated as the '/U' option [-Wslash-u-filename] 
label:38'0     X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
label:38'1                                  ?                                                                                                                  possible intended match
            2: clang: note: use '--' to treat subsequent arguments as filenames 
label:38'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            3: clang: error: no input files 
label:38'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>>>>

--

********************
```

https://github.com/llvm/llvm-project/pull/144745


More information about the llvm-commits mailing list