Skip to content

Expected<T> must be checked before access or destruction when trying to index non-existent file on Windows #80136

@ahoppen

Description

@ahoppen

The following command crashes the compiler on Windows

swiftc.exe C:\does-not-exist.swift -index-store-path C:\Users\alex\Desktop -Xfrontend -experimental-allow-module-with-compiler-errors -sdk %SDKROOT%

Stack trace (not very helpful)

error: compile command failed due to exception 3 (use -v to see invocation)
<unknown>:0: error: error opening input file 'C:\does-not-exist.swift' (no such file or directory)
Expected<T> must be checked before access or destruction.
Unchecked Expected<T> contained error:
no such file or directoryPlease submit a bug report (https://swift.org/contributing/#reporting-bugs) and include the crash backtrace.
Stack dump:
0.      Program arguments: C:\\Users\\alex\\AppData\\Local\\Programs\\Swift\\Toolchains\\0.0.0+Asserts\\usr\\bin\\swift-frontend.exe -frontend -c -primary-file C:\\does-not-exist.swift -target x86_64-unknown-windows-msvc -disable-objc-interop -sdk C:\\Users\\alex\\AppData\\Local\\Programs\\Swift\\Platforms\\0.0.0\\Windows.platform\\Developer\\SDKs\\Windows.sdk\\ -color-diagnostics -experimental-allow-module-with-compiler-errors -empty-abi-descriptor -resource-dir C:\\Users\\alex\\AppData\\Local\\Programs\\Swift\\Toolchains\\0.0.0+Asserts\\usr\\lib\\swift -module-name main -in-process-plugin-server-path C:\\Users\\alex\\AppData\\Local\\Programs\\Swift\\Toolchains\\0.0.0+Asserts\\usr\\bin\\SwiftInProcPluginServer.dll -plugin-path C:\\Users\\alex\\AppData\\Local\\Programs\\Swift\\Toolchains\\0.0.0+Asserts\\usr\\bin -plugin-path C:\\Users\\alex\\AppData\\Local\\Programs\\Swift\\Toolchains\\0.0.0+Asserts\\usr\\local\\bin -o C:\\Users\\alex\\AppData\\Local\\Temp\\TemporaryDirectory.nTp75O\\does-not-exist-1.o -index-store-path C:\\Users\\alex\\Desktop -index-system-modules
1.      Swift version 6.2-dev (LLVM 578d2a23bdb9c81, Swift d9536f554998505)
2.      Compiling with effective version 5.10 while allowing modules with compiler errors
Exception Code: 0x80000003
 #0 0x00007ff6eaa43895 (C:\Users\alex\AppData\Local\Programs\Swift\Toolchains\0.0.0+Asserts\usr\bin\swift-frontend.exe+0x6de3895)
 #1 0x00007ffe2f3ae6d5 (C:\Windows\System32\ucrtbase.dll+0x7e6d5)
 #2 0x00007ffe2f3af6e1 (C:\Windows\System32\ucrtbase.dll+0x7f6e1)
 #3 0x00007ff6e41fc234 (C:\Users\alex\AppData\Local\Programs\Swift\Toolchains\0.0.0+Asserts\usr\bin\swift-frontend.exe+0x59c234)
 #4 0x00007ff6e444be1b (C:\Users\alex\AppData\Local\Programs\Swift\Toolchains\0.0.0+Asserts\usr\bin\swift-frontend.exe+0x7ebe1b)
 #5 0x00007ff6e444b0f5 (C:\Users\alex\AppData\Local\Programs\Swift\Toolchains\0.0.0+Asserts\usr\bin\swift-frontend.exe+0x7eb0f5)
 #6 0x00007ff6e425b12f (C:\Users\alex\AppData\Local\Programs\Swift\Toolchains\0.0.0+Asserts\usr\bin\swift-frontend.exe+0x5fb12f)
 #7 0x00007ff6e425e41b (C:\Users\alex\AppData\Local\Programs\Swift\Toolchains\0.0.0+Asserts\usr\bin\swift-frontend.exe+0x5fe41b)
 #8 0x00007ff6e425cd2b (C:\Users\alex\AppData\Local\Programs\Swift\Toolchains\0.0.0+Asserts\usr\bin\swift-frontend.exe+0x5fcd2b)
 #9 0x00007ff6e425eb9f (C:\Users\alex\AppData\Local\Programs\Swift\Toolchains\0.0.0+Asserts\usr\bin\swift-frontend.exe+0x5feb9f)
#10 0x00007ff6e40ab336 (C:\Users\alex\AppData\Local\Programs\Swift\Toolchains\0.0.0+Asserts\usr\bin\swift-frontend.exe+0x44b336)
#11 0x00007ff6e40aad7c (C:\Users\alex\AppData\Local\Programs\Swift\Toolchains\0.0.0+Asserts\usr\bin\swift-frontend.exe+0x44ad7c)
#12 0x00007ff6eaaa167c (C:\Users\alex\AppData\Local\Programs\Swift\Toolchains\0.0.0+Asserts\usr\bin\swift-frontend.exe+0x6e4167c)
#13 0x00007ffe30c0259d (C:\Windows\System32\KERNEL32.DLL+0x1259d)
#14 0x00007ffe3224af38 (C:\Windows\SYSTEM32\ntdll.dll+0x5af38)

Metadata

Metadata

Assignees

No one assigned

    Labels

    WindowsPlatform: WindowscrashBug: A crash, i.e., an abnormal termination of softwareindexingArea → source tooling: AST indexing

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions