Skip to content

While remotely debugging a Linux ARM64 program, the program abruptly exits when calling UnmanagedCallersOnly function in another library #8330

@JinShil

Description

@JinShil

Type: Bug

Issue Description

When remotely debugging and ARM64 program, when the program reaches a call to an UnmanagedCallersOnly function in another library, it abruptly exits without throwing any Exceptions.

The program runs fine when run via an SSH session, or when executed locally on the Linux ARM64 device. The symptom only occurs when the program is being debugged.

The symptom does not occur when P/Invoking a libc function like abs. It only seems to occur when P/Invoking an UnmanagedCallersOnly function

The symptom does not occur on an Linux x64 target device. It only seems to occur on a Linux ARM64 device.

The symptom also occurs when using Visual Studio 2022 and launch profiles indicating the debugger infrastructure common to both Visual Studio 2022 and Visual Studio Code is the culprit.

The symptom occurs whether the development computer running Visual Studio Code is Widows or Linux.

Steps to Reproduce

  1. Obtain a Linux ARM64 device. A Raspberry Pi 4 or Raspberry Pi 5 will do fine.
  2. Install the .NET SDK to the Linux ARM64 device.
  3. Install vsdbg to the Linux ARM64 device.
  4. Create a .NET library with an UnmanagedCallersOnly function, and AoT compile it on the Linux ARM64 device.
  5. Create a .NET console application that P/Invokes the UnmanagedCallersOnly function using DLLImport.
  6. Remotely debug the .NET console application.
  7. Step through the application and observe that when a call the UnmanagedCallersOnly function is reached, the application abruptly exists.
  8. Run the program locally on the Linux ARM64 device, and observe that it runs fine.

Using the Attached Demonstration Project

vsdbg_bug.zip

  1. Obtain a Linux ARM64 device. A Raspberry Pi 4 or Raspberry Pi 5 will do fine.
  2. Install the .NET SDK to the Linux ARM64 device.
  3. Install vsdbg to the Linux ARM64 device.
  4. Open the attached demonstration project in Visual Studio Code
  5. Adjust the .vscode/settings.json file for your environment
  6. Press F5 to compile all the software, deploy it to the Linux ARM64 device, and launch it.
  7. Step through the application and observe that when a call the UnmanagedCallersOnly function is reached, the application abruptly exists.
  8. Run the program locally on the Linux ARM64 device, and observe that it runs fine.

Expected Behavior

One should be able to step through the application without the program abruptly exiting when it attempts to call an UnmanagedCallersOnly function.

Actual Behavior

While stepping through the program, when the program attempts to call an UnmanagedCallersOnly function, the program being debugged abruptly exits without throwing any Exceptions.

Logs

OmniSharp log

Starting OmniSharp server at 5/29/2025, 11:32:05 AM
    Target: c:\Users\Mike\Desktop\vsdbg_bug

OmniSharp server started with .NET 10.0.100-preview.4.25258.110
.
    Path: c:\Users\Mike\.vscode\extensions\ms-dotnettools.csharp-2.76.27-win32-x64\.omnisharp\1.39.12-net6.0\OmniSharp.dll
    PID: 15460

[info]: OmniSharp.Stdio.Host
        Starting OmniSharp on Windows 10.0.26100.0 (x64)
[info]: OmniSharp.Services.DotNetCliService
        Checking the 'DOTNET_ROOT' environment variable to find a .NET SDK
[info]: OmniSharp.Services.DotNetCliService
        Using the 'dotnet' on the PATH.
[info]: OmniSharp.Services.DotNetCliService
        DotNetPath set to dotnet
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Located 4 MSBuild instance(s)
            1: .NET Core SDK 10.0.100 17.15.0 - "C:\Program Files\dotnet\sdk\10.0.100-preview.4.25258.110"
            2: .NET Core SDK 9.0.300 17.14.5 - "C:\Program Files\dotnet\sdk\9.0.300"
            3: .NET Core SDK 9.0.100 17.12.7 - "C:\Program Files\dotnet\sdk\9.0.100"
            4: .NET Core SDK 8.0.303 17.10.4 - "C:\Program Files\dotnet\sdk\8.0.303"
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Registered MSBuild instance: .NET Core SDK 10.0.100 17.15.0 - "C:\Program Files\dotnet\sdk\10.0.100-preview.4.25258.110"
[info]: OmniSharp.WorkspaceInitializer
        Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0
[info]: OmniSharp.Cake.CakeProjectSystem
        Detecting Cake files in 'c:\Users\Mike\Desktop\vsdbg_bug\'.
[info]: OmniSharp.Cake.CakeProjectSystem
        Did not find any Cake files
[info]: OmniSharp.MSBuild.ProjectSystem
        No solution files found in 'c:\Users\Mike\Desktop\vsdbg_bug\'
[info]: OmniSharp.MSBuild.ProjectManager
        Queue project update for 'c:\Users\Mike\Desktop\vsdbg_bug\App\App.csproj'
[info]: OmniSharp.MSBuild.ProjectManager
        Queue project update for 'c:\Users\Mike\Desktop\vsdbg_bug\Native\Native.csproj'
[info]: OmniSharp.Script.ScriptProjectSystem
        Detecting CSX files in 'c:\Users\Mike\Desktop\vsdbg_bug\'.
[info]: OmniSharp.Script.ScriptProjectSystem
        Did not find any CSX files
[info]: OmniSharp.WorkspaceInitializer
        Configuration finished.
[info]: OmniSharp.Stdio.Host
        Omnisharp server running using Stdio at location 'c:\Users\Mike\Desktop\vsdbg_bug\' on host 10232.
[info]: OmniSharp.MSBuild.ProjectManager
        Loading project: c:\Users\Mike\Desktop\vsdbg_bug\App\App.csproj
[info]: OmniSharp.MSBuild.ProjectManager
        Successfully loaded project file 'c:\Users\Mike\Desktop\vsdbg_bug\App\App.csproj'.
[info]: OmniSharp.MSBuild.ProjectManager
        Adding project 'c:\Users\Mike\Desktop\vsdbg_bug\App\App.csproj'
[info]: OmniSharp.MSBuild.ProjectManager
        Loading project: c:\Users\Mike\Desktop\vsdbg_bug\Native\Native.csproj
[info]: OmniSharp.MSBuild.ProjectManager
        Successfully loaded project file 'c:\Users\Mike\Desktop\vsdbg_bug\Native\Native.csproj'.
[info]: OmniSharp.MSBuild.ProjectManager
        Adding project 'c:\Users\Mike\Desktop\vsdbg_bug\Native\Native.csproj'
[info]: OmniSharp.MSBuild.ProjectManager
        Update project: App
[info]: OmniSharp.MSBuild.ProjectManager
        Update project: Native
[info]: OmniSharp.Roslyn.CSharp.Services.Diagnostics.CSharpDiagnosticWorkerWithAnalyzers
        Solution initialized -> queue all documents for code analysis. Initial document count: 2.
[info]: OmniSharp.MSBuild.ProjectManager
        Queue project update for 'c:\Users\Mike\Desktop\vsdbg_bug\App\App.csproj'
[info]: OmniSharp.MSBuild.ProjectManager
        Loading project: c:\Users\Mike\Desktop\vsdbg_bug\App\App.csproj
[info]: OmniSharp.MSBuild.ProjectManager
        Successfully loaded project file 'c:\Users\Mike\Desktop\vsdbg_bug\App\App.csproj'.
[info]: OmniSharp.MSBuild.ProjectManager
        Update project: App
[info]: OmniSharp.Roslyn.CSharp.Services.Diagnostics.CSharpDiagnosticWorkerWithAnalyzers
        Analyzer work cancelled.
[info]: OmniSharp.MSBuild.ProjectManager
        Queue project update for 'c:\Users\Mike\Desktop\vsdbg_bug\App\App.csproj'
[info]: OmniSharp.MSBuild.ProjectManager
        Queue project update for 'c:\Users\Mike\Desktop\vsdbg_bug\App\App.csproj'
[info]: OmniSharp.MSBuild.ProjectManager
        Queue project update for 'c:\Users\Mike\Desktop\vsdbg_bug\App\App.csproj'
[info]: OmniSharp.MSBuild.ProjectManager
        Loading project: c:\Users\Mike\Desktop\vsdbg_bug\App\App.csproj
[info]: OmniSharp.MSBuild.ProjectManager
        Successfully loaded project file 'c:\Users\Mike\Desktop\vsdbg_bug\App\App.csproj'.
[info]: OmniSharp.MSBuild.ProjectManager
        Update project: App
[info]: OmniSharp.OmniSharpWorkspace
        Miscellaneous file: c:\Users\Mike\Desktop\vsdbg_bug\App\obj\Debug\net8.0\linux-arm64\.NETCoreApp,Version=v8.0.AssemblyAttributes.cs added to workspace
[info]: OmniSharp.OmniSharpWorkspace
        Miscellaneous file: c:\Users\Mike\Desktop\vsdbg_bug\App\obj\Debug\net8.0\linux-arm64\App.AssemblyInfo.cs added to workspace
[info]: OmniSharp.OmniSharpWorkspace
        Miscellaneous file: c:\Users\Mike\Desktop\vsdbg_bug\App\obj\Debug\net8.0\linux-arm64\App.GlobalUsings.g.cs added to workspace
[warn]: OmniSharp.Roslyn.CSharp.Services.Navigation.FindUsagesService
        No symbol found. File: c:\Users\Mike\Desktop\vsdbg_bug\App\Program.cs, Line: 6, Column: 18.

Debugger Engine Log

Starting: "ssh" [email protected] "/opt/Microsoft/vsdbg/vsdbg --interpreter=vscode"
-> (C) {"command":"initialize","arguments":{"clientID":"vscode","clientName":"Visual Studio Code","adapterID":"coreclr","pathFormat":"path","linesStartAt1":true,"columnsStartAt1":true,"supportsVariableType":true,"supportsVariablePaging":true,"supportsRunInTerminalRequest":true,"locale":"en","supportsProgressReporting":true,"supportsInvalidatedEvent":true,"supportsMemoryReferences":true,"supportsArgsCanBeInterpretedByShell":true,"supportsMemoryEvent":true,"supportsStartDebuggingRequest":true,"supportsANSIStyling":true},"type":"request","seq":1}
Error from pipe program 'ssh': Warning: Permanently added '192.168.0.10' (ED25519) to the list of known hosts.
-> (C) {"command":"launch","arguments":{"name":"Remote Debug","type":"coreclr","request":"launch","preLaunchTask":"postdeploy","program":"App","args":[],"cwd":"debug/","stopAtEntry":false,"console":"internalConsole","pipeTransport":{"pipeCwd":"C:\\Users\\Mike\\Desktop\\vsdbg_bug","pipeProgram":"ssh","pipeArgs":["[email protected]"],"debuggerPath":"/opt/Microsoft/vsdbg/vsdbg"},"env":{"DISPLAY":":0.0"},"logging":{"moduleLoad":true,"trace":true,"exceptions":true,"engineLogging":false},"__configurationTarget":6,"justMyCode":true,"requireExactSource":true,"enableStepFiltering":true,"suppressJITOptimizations":false,"symbolOptions":{"searchPaths":[],"searchMicrosoftSymbolServer":false,"searchNuGetOrgSymbolServer":false,"cachePath":"","moduleFilter":{"mode":"loadAllButExcluded","excludedModules":[],"includedModules":[],"includeSymbolsNextToModules":true,"includeSymbolsOnDemand":true}},"expressionEvaluationOptions":{"allowImplicitFuncEval":true,"allowToString":true,"allowFastEvaluate":true,"showRawValues":false},"internalConsoleOptions":"openOnSessionStart","__sessionId":"e4c16b1d-52b6-43a0-a460-4bdac13ec74c"},"type":"request","seq":2}
------------------------------------------------------------------------------
You may only use the Microsoft Visual Studio .NET/C/C++ Debugger (vsdbg) with
Visual Studio Code, Visual Studio or Visual Studio for Mac software to help you
develop and test your applications.
------------------------------------------------------------------------------
<- (R) {"seq":4,"type":"response","request_seq":2,"success":true,"command":"launch"}
<- (E) {"seq":5,"type":"event","event":"initialized","body":{}}
-> (C) {"command":"setBreakpoints","arguments":{"source":{"name":"Program.cs","path":"c:\\Users\\Mike\\Desktop\\vsdbg_bug\\App\\Program.cs","checksums":[{"algorithm":"SHA1","checksum":"d081a3fa916db757b17a5c5024fa190c23316841"},{"algorithm":"SHA256","checksum":"ad92c9d32d2bdc253ff02f11afcb0ff4cc73cf94467e9cb97ed97ff3a932d15d"},{"algorithm":"SHA1","checksum":"59d31eb1cdf96408f27d6cdedd15d870edbdee71"},{"algorithm":"SHA256","checksum":"b8deecee8f83b45901939ba677ff3161a5faccf0abb591aeff2727a0fc5fefa4"}]},"lines":[4,5],"breakpoints":[{"line":4},{"line":5}],"sourceModified":false},"type":"request","seq":3}
-> (C) {"command":"setFunctionBreakpoints","arguments":{"breakpoints":[]},"type":"request","seq":4}
-> (C) {"command":"setExceptionBreakpoints","arguments":{"filters":[],"filterOptions":[{"filterId":"user-unhandled"}]},"type":"request","seq":5}
<- (E) {"seq":6,"type":"event","event":"output","body":{"category":"telemetry","output":"vs/diagnostics/debugger/vsdbg/BreakpointAdded","data":{"VS.Diagnostics.Debugger.vsdbg.BreakpointAdded.HasCondition":false,"VS.Diagnostics.Debugger.vsdbg.BreakpointAdded.BreakpointType":"Source","VS.Diagnostics.Debugger.vsdbg.AdapterId":"coreclr","VS.Diagnostics.Debugger.vsdbg.BreakpointAdded.HasHitCount":false,"VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.BreakpointAdded.HasLogMessage":false,"VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.13.20213.2 commit:94f9ba144fac710bef039d59c06d96da171fd332"}}}
<- (E) {"seq":7,"type":"event","event":"output","body":{"category":"telemetry","output":"vs/diagnostics/debugger/vsdbg/BreakpointAdded","data":{"VS.Diagnostics.Debugger.vsdbg.BreakpointAdded.HasCondition":false,"VS.Diagnostics.Debugger.vsdbg.BreakpointAdded.BreakpointType":"Source","VS.Diagnostics.Debugger.vsdbg.AdapterId":"coreclr","VS.Diagnostics.Debugger.vsdbg.BreakpointAdded.HasHitCount":false,"VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.BreakpointAdded.HasLogMessage":false,"VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.13.20213.2 commit:94f9ba144fac710bef039d59c06d96da171fd332"}}}
<- (R) {"seq":8,"type":"response","request_seq":3,"success":true,"command":"setBreakpoints","body":{"breakpoints":[{"id":1,"verified":false,"message":"The breakpoint is pending and will be resolved when debugging starts.","line":4},{"id":2,"verified":false,"message":"The breakpoint is pending and will be resolved when debugging starts.","line":5}]}}
<- (R) {"seq":9,"type":"response","request_seq":4,"success":true,"command":"setFunctionBreakpoints","body":{"breakpoints":[]}}
<- (R) {"seq":10,"type":"response","request_seq":5,"success":true,"command":"setExceptionBreakpoints","body":{"breakpoints":[{"verified":true}]}}
-> (C) {"command":"configurationDone","type":"request","seq":6}
<- (E) {"seq":11,"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/vsdbg/ProcessCreate","data":{"VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.TargetArchitecture":"ARM64","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.13.20213.2 commit:94f9ba144fac710bef039d59c06d96da171fd332"}}}
<- (E) {"seq":12,"type":"event","event":"process","body":{"name":"/data/home/pi/debug/App","systemProcessId":4206,"isLocalProcess":false,"startMethod":"launch"}}
<- (E) {"seq":13,"type":"event","event":"breakpoint","body":{"reason":"changed","breakpoint":{"id":1,"verified":false,"message":"No symbols have been loaded for this document.","line":4}}}
<- (E) {"seq":14,"type":"event","event":"breakpoint","body":{"reason":"changed","breakpoint":{"id":2,"verified":false,"message":"No symbols have been loaded for this document.","line":5}}}
<- (R) {"seq":15,"type":"response","request_seq":6,"success":true,"command":"configurationDone"}
-> (C) {"command":"threads","type":"request","seq":7}
<- (R) {"seq":16,"type":"response","request_seq":7,"success":true,"command":"threads","body":{"threads":[]}}
App (4206): Loaded '/opt/Microsoft/dotnet/shared/Microsoft.NETCore.App/8.0.16/System.Private.CoreLib.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
<- (E) {"seq":18,"type":"event","event":"module","body":{"reason":"new","module":{"id":1000,"name":"System.Private.CoreLib.dll","path":"/opt/Microsoft/dotnet/shared/Microsoft.NETCore.App/8.0.16/System.Private.CoreLib.dll","isOptimized":true,"isUserCode":false,"version":"8.00.1625.21506","symbolStatus":"Skipped loading symbols."}}}
<- (E) {"seq":19,"type":"event","event":"thread","body":{"reason":"started","threadId":4206}}
-> (C) {"command":"threads","type":"request","seq":8}
<- (R) {"seq":20,"type":"response","request_seq":8,"success":true,"command":"threads","body":{"threads":[{"id":4206,"name":"Thread #4206"}]}}
App (4206): Loaded '/data/home/pi/debug/App.dll'. Symbols loaded.
<- (E) {"seq":22,"type":"event","event":"module","body":{"reason":"new","module":{"id":1001,"name":"App.dll","path":"/data/home/pi/debug/App.dll","isOptimized":false,"isUserCode":true,"version":"1.00.0.0","symbolStatus":"Symbols loaded.","symbolFilePath":"/data/home/pi/debug/App.pdb"}}}
<- (E) {"seq":23,"type":"event","event":"breakpoint","body":{"reason":"changed","breakpoint":{"id":1,"verified":true,"source":{"name":"Program.cs","path":"C:\\Users\\Mike\\Desktop\\vsdbg_bug\\App\\Program.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"ad92c9d32d2bdc253ff02f11afcb0ff4cc73cf94467e9cb97ed97ff3a932d15d"}]},"line":4,"endLine":4,"offset":0}}}
<- (E) {"seq":24,"type":"event","event":"breakpoint","body":{"reason":"changed","breakpoint":{"id":2,"verified":true,"source":{"name":"Program.cs","path":"C:\\Users\\Mike\\Desktop\\vsdbg_bug\\App\\Program.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"ad92c9d32d2bdc253ff02f11afcb0ff4cc73cf94467e9cb97ed97ff3a932d15d"}]},"line":5,"endLine":5,"offset":0}}}
App (4206): Loaded '/opt/Microsoft/dotnet/shared/Microsoft.NETCore.App/8.0.16/System.Runtime.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
<- (E) {"seq":26,"type":"event","event":"module","body":{"reason":"new","module":{"id":1002,"name":"System.Runtime.dll","path":"/opt/Microsoft/dotnet/shared/Microsoft.NETCore.App/8.0.16/System.Runtime.dll","isOptimized":true,"isUserCode":false,"version":"8.00.1625.21506","symbolStatus":"Skipped loading symbols."}}}
App (4206): Loaded '/opt/Microsoft/dotnet/shared/Microsoft.NETCore.App/8.0.16/System.Console.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
<- (E) {"seq":28,"type":"event","event":"module","body":{"reason":"new","module":{"id":1003,"name":"System.Console.dll","path":"/opt/Microsoft/dotnet/shared/Microsoft.NETCore.App/8.0.16/System.Console.dll","isOptimized":true,"isUserCode":false,"version":"8.00.1625.21506","symbolStatus":"Skipped loading symbols."}}}
<- (E) {"seq":29,"type":"event","event":"breakpoint","body":{"reason":"changed","breakpoint":{"id":1,"verified":true,"source":{"name":"Program.cs","path":"C:\\Users\\Mike\\Desktop\\vsdbg_bug\\App\\Program.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"ad92c9d32d2bdc253ff02f11afcb0ff4cc73cf94467e9cb97ed97ff3a932d15d"}]},"line":4,"endLine":4,"instructionReference":"0x0000007F59CD2258","offset":0}}}
<- (E) {"seq":30,"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/vsdbg/Launch","data":{"VS.Diagnostics.Debugger.vsdbg.Launch.DebuggerStartTime":792,"VS.Diagnostics.Debugger.vsdbg.SourceFileMappings":0,"VS.Diagnostics.Debugger.vsdbg.VisualizerFileUsed":false,"VS.Diagnostics.Debugger.vsdbg.TargetType":"Live","VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.1625.21506","VS.Diagnostics.Debugger.vsdbg.AdapterId":"coreclr","VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.13.20213.2 commit:94f9ba144fac710bef039d59c06d96da171fd332"}}}
<- (E) {"seq":31,"type":"event","event":"stopped","body":{"reason":"breakpoint","threadId":4206,"allThreadsStopped":true,"hitBreakpointIds":[1],"source":{"name":"Program.cs","path":"C:\\Users\\Mike\\Desktop\\vsdbg_bug\\App\\Program.cs"},"line":4,"column":1}}
-> (C) {"command":"threads","type":"request","seq":9}
<- (R) {"seq":32,"type":"response","request_seq":9,"success":true,"command":"threads","body":{"threads":[{"id":4206,"name":"Main Thread"}]}}
-> (C) {"command":"stackTrace","arguments":{"threadId":4206,"startFrame":0,"levels":20},"type":"request","seq":10}
-> (C) {"command":"stackTrace","arguments":{"threadId":4206,"startFrame":0,"levels":20},"type":"request","seq":11}
<- (R) {"seq":33,"type":"response","request_seq":10,"success":true,"command":"stackTrace","body":{"stackFrames":[{"id":1000,"name":"App.dll!Program.<Main>$(string[] args) Line 4","source":{"name":"Program.cs","path":"C:\\Users\\Mike\\Desktop\\vsdbg_bug\\App\\Program.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"ad92c9d32d2bdc253ff02f11afcb0ff4cc73cf94467e9cb97ed97ff3a932d15d"}]},"line":4,"column":1,"endLine":4,"endColumn":24,"instructionPointerReference":"0x0000007F59CD2258","moduleId":1001},{"id":1001,"name":"[External Code]","line":0,"column":0,"presentationHint":"subtle"}],"totalFrames":2}}
<- (R) {"seq":34,"type":"response","request_seq":11,"success":true,"command":"stackTrace","body":{"stackFrames":[{"id":1000,"name":"App.dll!Program.<Main>$(string[] args) Line 4","source":{"name":"Program.cs","path":"C:\\Users\\Mike\\Desktop\\vsdbg_bug\\App\\Program.cs","sourceReference":0,"checksums":[{"algorithm":"SHA256","checksum":"ad92c9d32d2bdc253ff02f11afcb0ff4cc73cf94467e9cb97ed97ff3a932d15d"}]},"line":4,"column":1,"endLine":4,"endColumn":24,"instructionPointerReference":"0x0000007F59CD2258","moduleId":1001},{"id":1002,"name":"[External Code]","line":0,"column":0,"presentationHint":"subtle"}],"totalFrames":2}}
-> (C) {"command":"scopes","arguments":{"frameId":1000},"type":"request","seq":12}
<- (R) {"seq":35,"type":"response","request_seq":12,"success":true,"command":"scopes","body":{"scopes":[{"name":"Locals","variablesReference":1000,"expensive":false}]}}
-> (C) {"command":"variables","arguments":{"variablesReference":1000},"type":"request","seq":13}
<- (R) {"seq":36,"type":"response","request_seq":13,"success":true,"command":"variables","body":{"variables":[{"name":"args [string[]]","value":"{string[0]}","type":"string[]","presentationHint":{"kind":"data","attributes":["canHaveObjectId"],"customUIVisualizers":[{"uiSideVisualizerTypeName":"Microsoft.VisualStudio.Debugger.IEnumerableVisualizer.IEnumerableVisualizer","uiSideVisualizerAssemblyName":"IEnumerableVisualizer.UI, Version=17.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a","debuggeeSideVisualizerTypeName":"Microsoft.VisualStudio.Debugger.IEnumerableVisualizer.IEnumerableVisualizerSource","debuggeeSideVisualizerAssemblyName":"IEnumerableVisualizer.DebuggeeSide, Version=17.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a","id":0,"menuName":"IEnumerable Visualizer","description":"IEnumerable Visualizer"}]},"evaluateName":"args","variablesReference":0,"memoryReference":"0x0000001593008B18"},{"name":"result [int]","value":"0","type":"int","presentationHint":{"kind":"data"},"evaluateName":"result","variablesReference":0,"memoryReference":"0x0000000000000000"}]}}
-> (C) {"command":"next","arguments":{"threadId":4206},"type":"request","seq":14}
<- (E) {"seq":37,"type":"event","event":"continued","body":{"threadId":4206,"allThreadsContinued":true}}
<- (R) {"seq":38,"type":"response","request_seq":14,"success":true,"command":"next"}
<- (E) {"seq":39,"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/MetaDataMemoryUsage","data":{"VS.Diagnostics.Debugger.TotalBytes":2754524.0,"VS.Diagnostics.Debugger.AdditionalModuleCount":0,"VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.1625.21506","VS.Diagnostics.Debugger.TotalModuleCount":4,"VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.13.20213.2 commit:94f9ba144fac710bef039d59c06d96da171fd332"}}}
<- (E) {"seq":40,"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/IncompleteStep","data":{"VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.1625.21506","VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.13.20213.2 commit:94f9ba144fac710bef039d59c06d96da171fd332"}}}
<- (E) {"seq":41,"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/ExpressionEvaluator/DebugSessionEnded","data":{"VS.Diagnostics.Debugger.ExpressionEvaluator.FastExecuteDisabledCount.ExecutionException":0,"VS.Diagnostics.Debugger.ExpressionEvaluator.FastExecuteDisabledCount.BackwardBranchEncountered":0,"VS.Diagnostics.Debugger.ExpressionEvaluator.FastExecuteDisabledCount.MaxStackHeightExceeded":0,"VS.Diagnostics.Debugger.ExpressionEvaluator.FastExecuteDisabledCount.DecodeException":0,"VS.Diagnostics.Debugger.ExpressionEvaluator.FastExecuteDisabledCount.ExceptionClauses":0,"VS.Diagnostics.Debugger.ExpressionEvaluator.FastExecuteDisabledCount.None":0,"VS.Diagnostics.Debugger.ExpressionEvaluator.LINQ.count":0.0,"VS.Diagnostics.Debugger.vsdbg.Version":"17.13.20213.2 commit:94f9ba144fac710bef039d59c06d96da171fd332","VS.Diagnostics.Debugger.ExpressionEvaluator.ClrVersion":"8.0.1625.21506","VS.Diagnostics.Debugger.ExpressionEvaluator.SuccessCount":2.0,"VS.Diagnostics.Debugger.ExpressionEvaluator.FastExecuteDisabledCount.IlLength":0,"VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.ExpressionEvaluator.SlowestFastExecuteTimeInMs":0.0,"VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.1625.21506","VS.Diagnostics.Debugger.ExpressionEvaluator.GetPropertyValueCount":0,"VS.Diagnostics.Debugger.ExpressionEvaluator.FastExecuteSuccessCount":0,"VS.Diagnostics.Debugger.ExpressionEvaluator.FastExecuteAttemptCount":0,"VS.Diagnostics.Debugger.ExpressionEvaluator.TotalFastExecuteTimeInMs":0.0,"VS.Diagnostics.Debugger.ExpressionEvaluator.FailCount":0.0}}}
<- (E) {"seq":42,"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/vsdbg/ProcessExit","data":{"VS.Diagnostics.Debugger.vsdbg.ProcessExit.StdInWrittenTo":false,"VS.Diagnostics.Debugger.vsdbg.ProcessExit.StdInReadFrom":false,"VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.1625.21506","VS.Diagnostics.Debugger.vsdbg.AdapterId":"coreclr","VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.13.20213.2 commit:94f9ba144fac710bef039d59c06d96da171fd332"}}}
The program '[4206] App' has exited with code 0 (0x0).
<- (E) {"seq":44,"type":"event","event":"exited","body":{"exitCode":0}}
<- (E) {"seq":45,"type":"event","event":"terminated","body":{}}
-> (C) {"command":"disconnect","arguments":{"restart":false,"terminateDebuggee":false},"type":"request","seq":15}
<- (E) {"seq":46,"type":"event","event":"output","body":{"category":"telemetry","output":"VS/Diagnostics/Debugger/vsdbg/DebugCompleted","data":{"VS.Diagnostics.Debugger.vsdbg.DebugCompleted.BreakCounter":1,"VS.Diagnostics.Debugger.vsdbg.TargetCLRVersion":"8.0.1625.21506","VS.Diagnostics.Debugger.vsdbg.AdapterId":"coreclr","VS.Diagnostics.Debugger.vsdbg.Distribution.Version":"12","VS.Diagnostics.Debugger.vsdbg.Distribution.Name":"debian","VS.Diagnostics.Debugger.vsdbg.OSFamily":"Linux","VS.Diagnostics.Debugger.vsdbg.Version":"17.13.20213.2 commit:94f9ba144fac710bef039d59c06d96da171fd332"}}}
<- (R) {"seq":47,"type":"response","request_seq":15,"success":true,"command":"disconnect"}

Environment information

VSCode version: 1.100.2
C# Extension: 2.76.27
Using OmniSharp: true

Dotnet Information .NET SDK: Version: 10.0.100-preview.4.25258.110 Commit: c22dcd0c7a Workload version: 10.0.100-manifests.e9b6aa6e MSBuild version: 17.15.0-preview-25258-110+c22dcd0c7

Runtime Environment:
OS Name: Windows
OS Version: 10.0.26100
OS Platform: Windows
RID: win-x64
Base Path: C:\Program Files\dotnet\sdk\10.0.100-preview.4.25258.110\

.NET workloads installed:
[wasm-tools]
Installation Source: VS 17.14.36121.58
Manifest Version: 10.0.100-preview.4.25258.110/10.0.100-preview.4
Manifest Path: C:\Program Files\dotnet\sdk-manifests\10.0.100-preview.4\microsoft.net.workload.mono.toolchain.current\10.0.100-preview.4.25258.110\WorkloadManifest.json
Install Type: Msi

[maccatalyst]
Installation Source: VS 17.14.36121.58
Manifest Version: 18.2.10695-net10-p3/10.0.100-preview.3
Manifest Path: C:\Program Files\dotnet\sdk-manifests\10.0.100-preview.3\microsoft.net.sdk.maccatalyst\18.2.10695-net10-p3\WorkloadManifest.json
Install Type: Msi

[ios]
Installation Source: VS 17.14.36121.58
Manifest Version: 18.2.10695-net10-p3/10.0.100-preview.3
Manifest Path: C:\Program Files\dotnet\sdk-manifests\10.0.100-preview.3\microsoft.net.sdk.ios\18.2.10695-net10-p3\WorkloadManifest.json
Install Type: Msi

[maui-windows]
Installation Source: VS 17.14.36121.58
Manifest Version: 10.0.0-preview.3.25208.1/10.0.100-preview.3
Manifest Path: C:\Program Files\dotnet\sdk-manifests\10.0.100-preview.3\microsoft.net.sdk.maui\10.0.0-preview.3.25208.1\WorkloadManifest.json
Install Type: Msi

[android]
Installation Source: VS 17.14.36121.58
Manifest Version: 36.0.0-preview.3.22/10.0.100-preview.3
Manifest Path: C:\Program Files\dotnet\sdk-manifests\10.0.100-preview.3\microsoft.net.sdk.android\36.0.0-preview.3.22\WorkloadManifest.json
Install Type: Msi

Configured to use workload sets when installing new manifests.
Workloads are configured to install and update using workload versions, but none were found. Run "dotnet workload restore" to install a workload version.

Host:
Version: 10.0.0-preview.4.25258.110
Architecture: x64
Commit: c22dcd0c7a

.NET SDKs installed:
8.0.303 [C:\Program Files\dotnet\sdk]
9.0.100 [C:\Program Files\dotnet\sdk]
9.0.300 [C:\Program Files\dotnet\sdk]
10.0.100-preview.4.25258.110 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
Microsoft.AspNetCore.App 6.0.36 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 7.0.20 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 8.0.7 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 8.0.16 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 9.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 9.0.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 10.0.0-preview.4.25258.110 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 6.0.36 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 7.0.20 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.10 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.14 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.16 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 9.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 9.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 10.0.0-preview.4.25258.110 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 6.0.36 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 7.0.20 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 8.0.7 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 8.0.10 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 8.0.16 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 9.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 9.0.5 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 10.0.0-preview.4.25258.110 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

Other architectures found:
x86 [C:\Program Files (x86)\dotnet]
registered at [HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\x86\InstallLocation]

Environment variables:
Not set

global.json file:
Not found

Extension Author Version Folder Name
blazorwasm-companion ms-dotnettools 1.1.4 ms-dotnettools.blazorwasm-companion-1.1.4
cmake-tools ms-vscode 1.20.53 ms-vscode.cmake-tools-1.20.53
copilot GitHub 1.325.0 github.copilot-1.325.0
copilot-chat GitHub 0.27.2 github.copilot-chat-0.27.2
cortex-debug marus25 1.12.1 marus25.cortex-debug-1.12.1
cpptools ms-vscode 1.25.3 ms-vscode.cpptools-1.25.3-win32-x64
cpptools-extension-pack ms-vscode 1.3.1 ms-vscode.cpptools-extension-pack-1.3.1
cpptools-themes ms-vscode 2.0.0 ms-vscode.cpptools-themes-2.0.0
csharp ms-dotnettools 2.76.27 ms-dotnettools.csharp-2.76.27-win32-x64
debug-tracker-vscode mcu-debug 0.0.15 mcu-debug.debug-tracker-vscode-0.0.15
debugpy ms-python 2025.8.0 ms-python.debugpy-2025.8.0-win32-x64
memory-view mcu-debug 0.0.25 mcu-debug.memory-view-0.0.25
mono-debug ms-vscode 0.16.3 ms-vscode.mono-debug-0.16.3
peripheral-viewer mcu-debug 1.4.6 mcu-debug.peripheral-viewer-1.4.6
pico-w-go paulober 4.2.2 paulober.pico-w-go-4.2.2-win32-x64
python ms-python 2025.6.1 ms-python.python-2025.6.1-win32-x64
raspberry-pi-pico raspberry-pi 0.17.5 raspberry-pi.raspberry-pi-pico-0.17.5
remote-containers ms-vscode-remote 0.413.0 ms-vscode-remote.remote-containers-0.413.0
remote-explorer ms-vscode 0.5.0 ms-vscode.remote-explorer-0.5.0
remote-server ms-vscode 1.5.2 ms-vscode.remote-server-1.5.2
remote-ssh ms-vscode-remote 0.120.0 ms-vscode-remote.remote-ssh-0.120.0
remote-ssh-edit ms-vscode-remote 0.87.0 ms-vscode-remote.remote-ssh-edit-0.87.0
remote-wsl ms-vscode-remote 0.99.0 ms-vscode-remote.remote-wsl-0.99.0
rtos-views mcu-debug 0.0.7 mcu-debug.rtos-views-0.0.7
vscode-dotnet-runtime ms-dotnettools 2.3.5 ms-dotnettools.vscode-dotnet-runtime-2.3.5
vscode-pylance ms-python 2025.5.1 ms-python.vscode-pylance-2025.5.1
vscode-remote-extensionpack ms-vscode-remote 0.26.0 ms-vscode-remote.vscode-remote-extensionpack-0.26.0
vscode-serial-monitor ms-vscode 0.13.1 ms-vscode.vscode-serial-monitor-0.13.1

Extension version: 2.76.27
VS Code version: Code 1.100.2 (848b80aeb52026648a8ff9f7c45a9b0a80641e2e, 2025-05-14T21:47:40.416Z)
OS version: Windows_NT x64 10.0.26100
Modes:

System Info
Item Value
CPUs 13th Gen Intel(R) Core(TM) i9-13900K (32 x 2995)
GPU Status 2d_canvas: enabled
canvas_oop_rasterization: enabled_on
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
video_decode: enabled
video_encode: enabled
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: enabled
webnn: disabled_off
Load (avg) undefined
Memory (System) 31.77GB (11.82GB free)
Process Argv . --crash-reporter-id 5cfd0d83-d651-4bdc-b7d5-a2b091cb5dd3
Screen Reader no
VM 0%
A/B Experiments
vsliv368cf:30146710
vspor879:30202332
vspor708:30202333
vspor363:30204092
vscod805cf:30301675
binariesv615:30325510
c4g48928:30535728
azure-dev_surveyonecf:30548226
962ge761:30959799
h48ei257:31000450
pythontbext0:30879054
cppperfnew:31000557
dwnewjupyter:31046869
pythonrstrctxt:31112756
nativeloc2:31192216
5fd0e150:31155592
dwcopilot:31170013
6074i472:31201624
dwoutputs:31242946
customenabled:31248079
hdaa2157:31222309
copilot_t_ci:31222730
e5gg6876:31282496
pythoneinst12:31285622
bgtreat:31268568
4gafe986:31271826
c7cif404:31314491
996jf627:31283433
pythonrdcb7:31303018
usemplatestapi:31297334
0aa6g176:31307128
7bj51361:31289155
747dc170:31275177
pylancecolor:31314202
aj953862:31281341
generatesymbolt:31295002
convertfstringf:31295003
gendocf:31295004

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions