Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

crash compiling simple code on windows #71490

Open
mikewoodworth opened this issue Feb 9, 2024 · 0 comments
Open

crash compiling simple code on windows #71490

mikewoodworth opened this issue Feb 9, 2024 · 0 comments
Labels
bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. c++ interop Feature: Interoperability with C++ crash Bug: A crash, i.e., an abnormal termination of software Windows Platform: Windows

Comments

@mikewoodworth
Copy link

Description

The simple code below crashes when compiled on windows, but only when run with .interoperabilityMode(.Cxx) (commenting out that swift setting fixes the problem)

Reproduction

import WinSDK

var pe32: PROCESSENTRY32W = PROCESSENTRY32W()
pe32.dwSize = DWORD(MemoryLayout<PROCESSENTRY32W>.size)

Stack dump

error: failed parsing the Swift compiler output: unexpected JSON message: {
  "exception" : 3,
  "kind" : "abnormal-exit",
  "name" : "compile",
  "output" : "Assertion failed: NextOffset <= TotalStride, file C:\\Users\\swift-ci\\jenkins\\workspace\\oss-swift-windows-toolchain\\swift\\lib\\IRGen\\GenStruct.cpp, line 1394\r\nPlease submit a bug report (https:\/\/swift.org\/contributing\/#reporting-bugs) and include the crash backtrace.\r\nStack dump:\r\n0.\tProgram arguments: C:\/Library\/Developer\/Toolchains\/unknown-Asserts-development.xctoolchain\/usr\/bin\/swift-frontend.exe -frontend -c C:\\\\Users\\\\mike\\\\ppid\\\\Sources\\\\main.swift -emit-module-path C:\\\\Users\\\\mike\\\\ppid\\\\.build\\\\x86_64-unknown-windows-msvc\\\\release\\\\ppid.swiftmodule -emit-module-doc-path C:\\\\Users\\\\mike\\\\ppid\\\\.build\\\\x86_64-unknown-windows-msvc\\\\release\\\\ppid.swiftdoc -emit-module-source-info-path C:\\\\Users\\\\mike\\\\ppid\\\\.build\\\\x86_64-unknown-windows-msvc\\\\release\\\\ppid.swiftsourceinfo -emit-dependencies-path C:\\\\Users\\\\mike\\\\ppid\\\\.build\\\\x86_64-unknown-windows-msvc\\\\release\\\\ppid.build\\\\ppid.d -target x86_64-unknown-windows-msvc -disable-objc-interop -cxx-interoperability-mode=default -sdk C:\\\\Library\\\\Developer\\\\Platforms\\\\Windows.platform\\\\Developer\\\\SDKs\\\\Windows.sdk -I C:\\\\Users\\\\mike\\\\ppid\\\\.build\\\\x86_64-unknown-windows-msvc\\\\release -I C:\\\\Library\\\\Developer\\\\Platforms\\\\Windows.platform\\\\Developer\\\\Library\\\\XCTest-development\\\\usr\\\\lib\\\\swift\\\\windows -I C:\\\\Library\\\\Developer\\\\Platforms\\\\Windows.platform\\\\Developer\\\\Library\\\\XCTest-development\\\\usr\\\\lib\\\\swift\\\\windows\\\\x86_64 -color-diagnostics -g -module-cache-path C:\\\\Users\\\\mike\\\\ppid\\\\.build\\\\x86_64-unknown-windows-msvc\\\\release\\\\ModuleCache -swift-version 5 -O -D SWIFT_PACKAGE -empty-abi-descriptor -resource-dir C:\\\\Library\\\\Developer\\\\Toolchains\\\\unknown-Asserts-development.xctoolchain\\\\usr\\\\lib\\\\swift -Xcc -D_MT -Xcc -D_DLL -Xcc -Xclang -Xcc --dependent-lib=msvcrt -module-name ppid -package-name ppid -plugin-path C:\\\\Library\\\\Developer\\\\Toolchains\\\\unknown-Asserts-development.xctoolchain\\\\usr\\\\bin -plugin-path C:\\\\Library\\\\Developer\\\\Toolchains\\\\unknown-Asserts-development.xctoolchain\\\\usr\\\\local\\\\bin -enable-default-cmo -num-threads 8 -o C:\\\\Users\\\\mike\\\\ppid\\\\.build\\\\x86_64-unknown-windows-msvc\\\\release\\\\ppid.build\\\\main.swift.o\r\n1.\tSwift version 5.9.1 (swift-5.9.1-RELEASE)\r\n2.\tCompiling with the current language version\r\n3.\tWhile evaluating request ExecuteSILPipelineRequest(Run pipelines { PrepareOptimizationPasses, EarlyModulePasses, HighLevel,Function+EarlyLoopOpt, HighLevel,Module+StackPromote, MidLevel,Function, ClosureSpecialize, LowLevel,Function, LateLoopOpt, SIL Debug Info Generator } on SIL for ppid)\r\n4.\tWhile running pass #11977 SILModuleTransform \"TargetConstantFolding\".\r\n5.\tWhile converting type 'tagPROCESSENTRY32W'\r\nException Code: 0x80000003\r\n #0 0x00007ff7e097a7a5 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x56da7a5)\r\n #1 0x00007fff2267e5f5 (C:\\WINDOWS\\System32\\ucrtbase.dll+0x7e5f5)\r\n #2 0x00007fff2267f601 (C:\\WINDOWS\\System32\\ucrtbase.dll+0x7f601)\r\n #3 0x00007fff22680fae (C:\\WINDOWS\\System32\\ucrtbase.dll+0x80fae)\r\n #4 0x00007fff226811f1 (C:\\WINDOWS\\System32\\ucrtbase.dll+0x811f1)\r\n #5 0x00007ff7db8bcbc7 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x61cbc7)\r\n #6 0x00007ff7db8bd3c3 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x61d3c3)\r\n #7 0x00007ff7db7601b6 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x4c01b6)\r\n #8 0x00007ff7db76128a (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x4c128a)\r\n #9 0x00007ff7db7674b8 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x4c74b8)\r\n#10 0x00007ff7db76762b (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x4c762b)\r\n#11 0x00007ff7dbdf79a9 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0xb579a9)\r\n#12 0x00007ff7dbdf7489 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0xb57489)\r\n#13 0x00007ff7dbdf7c62 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0xb57c62)\r\n#14 0x00007ff7dbb2f518 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x88f518)\r\n#15 0x00007ff7dbb2d91e (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x88d91e)\r\n#16 0x00007ff7dbb2db45 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x88db45)\r\n#17 0x00007ff7dbb2d5b7 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x88d5b7)\r\n#18 0x00007ff7dbafa08d (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x85a08d)\r\n#19 0x00007ff7dbb2a111 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x88a111)\r\n#20 0x00007ff7dbb2dbf4 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x88dbf4)\r\n#21 0x00007ff7dbaf9ea5 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x859ea5)\r\n#22 0x00007ff7db59ff31 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x2fff31)\r\n#23 0x00007ff7db3a6f2d (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x106f2d)\r\n#24 0x00007ff7db3a7a0f (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x107a0f)\r\n#25 0x00007ff7db3a6b84 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x106b84)\r\n#26 0x00007ff7db3a907f (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x10907f)\r\n#27 0x00007ff7db3664fc (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0xc64fc)\r\n#28 0x00007ff7db366169 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0xc6169)\r\n#29 0x00007ff7e0a0c174 (C:\\Library\\Developer\\Toolchains\\unknown-Asserts-development.xctoolchain\\usr\\bin\\swift-frontend.exe+0x576c174)\r\n#30 0x00007fff227d257d (C:\\WINDOWS\\System32\\KERNEL32.DLL+0x1257d)\r\n#31 0x00007fff24acaa58 (C:\\WINDOWS\\SYSTEM32\\ntdll.dll+0x5aa58)\r\n",
  "pid" : 40396,
  "process" : {
    "real_pid" : 40396
  }
}: dataCorrupted(Swift.DecodingError.Context(codingPath: [CodingKeys(stringValue: "kind", intValue: nil)], debugDescription: "invalid kind", underlyingError: nil))

Expected behavior

compilation (this is part of a larger method that reads the parent pid)

Environment

Swift version 5.9.1 (swift-5.9.1-RELEASE)
Target: x86_64-unknown-windows-msvc

Additional information

No response

@mikewoodworth mikewoodworth added bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. crash Bug: A crash, i.e., an abnormal termination of software triage needed This issue needs more specific labels labels Feb 9, 2024
@compnerd compnerd added Windows Platform: Windows c++ interop Feature: Interoperability with C++ labels Feb 9, 2024
@hborla hborla removed the triage needed This issue needs more specific labels label Apr 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. c++ interop Feature: Interoperability with C++ crash Bug: A crash, i.e., an abnormal termination of software Windows Platform: Windows
Projects
None yet
Development

No branches or pull requests

3 participants