dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
15.41k stars 4.76k forks source link

Assertion when stepping over breakpoint #110016

Open rolfbjarne opened 1 day ago

rolfbjarne commented 1 day ago

Description

The app crashes with an assertion when stepping over a breakpoint.

Ref: https://github.com/mono/mono/issues/19899

Reproduction Steps

Test project: https://github.com/user-attachments/files/17809842/debugger_assert.zip

Steps to reproduce:

  1. Place a breakpoint at AppDelegate.cs:34
  2. Run application with debugger - I used VS Code.
  3. Step-over from breakpoint

Expected behavior

No crash.

Actual behavior

Result: app crashes with:

error: * Assertion at /Users/runner/work/1/s/src/mono/mono/mini/mini-arm64.c:6876, condition `native_offset % 4 == 0' not met

Crash report: https://gist.github.com/rolfbjarne/0419d1637fd7176221aed5c569f39220 Debug console output: https://gist.github.com/rolfbjarne/53fcc11a7c15485cbc1301ffb6e004e4

Regression?

No response

Known Workarounds

No response

Configuration

$ dotnet --info
.NET SDK:
 Version:           9.0.100
 Commit:            59db016f11
 Workload version:  9.0.100-manifests.633e1062
 MSBuild version:   17.12.7+5b8665660

Runtime Environment:
 OS Name:     Mac OS X
 OS Version:  14.7
 OS Platform: Darwin
 RID:         osx-arm64
 Base Path:   /usr/local/share/dotnet/sdk/9.0.100/

.NET workloads installed:
 [macos]
   Installation Source: SDK 9.0.100
   Manifest Version:    15.0.9617/9.0.100
   Manifest Path:       /usr/local/share/dotnet/sdk-manifests/9.0.100/microsoft.net.sdk.macos/15.0.9617/WorkloadManifest.json
   Install Type:        FileBased

 [maui-ios]
   Installation Source: SDK 9.0.100
   Manifest Version:    9.0.10/9.0.100
   Manifest Path:       /usr/local/share/dotnet/sdk-manifests/9.0.100/microsoft.net.sdk.maui/9.0.10/WorkloadManifest.json
   Install Type:        FileBased

 [ios]
   Installation Source: SDK 9.0.100
   Manifest Version:    18.0.9617/9.0.100
   Manifest Path:       /usr/local/share/dotnet/sdk-manifests/9.0.100/microsoft.net.sdk.ios/18.0.9617/WorkloadManifest.json
   Install Type:        FileBased

 [maccatalyst]
   Installation Source: SDK 9.0.100
   Manifest Version:    18.0.9617/9.0.100
   Manifest Path:       /usr/local/share/dotnet/sdk-manifests/9.0.100/microsoft.net.sdk.maccatalyst/18.0.9617/WorkloadManifest.json
   Install Type:        FileBased

 [android]
   Installation Source: SDK 9.0.100
   Manifest Version:    35.0.7/9.0.100
   Manifest Path:       /usr/local/share/dotnet/sdk-manifests/9.0.100/microsoft.net.sdk.android/35.0.7/WorkloadManifest.json
   Install Type:        FileBased

Configured to use loose manifests when installing new manifests.

Host:
  Version:      9.0.0
  Architecture: arm64
  Commit:       9d5a6a9aa4

.NET SDKs installed:
  8.0.304 [/usr/local/share/dotnet/sdk]
  8.0.402 [/usr/local/share/dotnet/sdk]
  9.0.100 [/usr/local/share/dotnet/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 8.0.8 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 9.0.0-rc.2.24474.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 9.0.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 8.0.8 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 9.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]

Other architectures found:
  None

Environment variables:
  Not set

global.json file:
  Not found

Learn more:
  https://aka.ms/dotnet/info

Download .NET:
  https://aka.ms/dotnet/download

Other information

No response

dotnet-policy-service[bot] commented 1 day ago

Tagging subscribers to this area: @thaystg See info in area-owners.md if you want to be subscribed.