__icall_wrapper_ves_icall_mono_delegate_ctor can lead to SIGSEGV on iOS with MtouchInterpreter=-all #89359

Description

@frenzibyte

Description

The following code snippet results in a SIGSEGV on iOS when building with <MtouchInterpreter>-all</MtouchInterpreter>.

// obj must be 'IInterface<Implementation>', can't repro when declaring as 'Implementation'IInterface<Implementation>obj=newImplementation();Func<object,Implementation>action=obj.Method;Action.Invoke(default!);publicinterfaceIInterface<outTValue>{TValueMethod<TInterface>(TInterfaceparameter)whereTInterface:class;// constriant required, any constraint still repros}// implementation must be structpublicstructImplementation:IInterface<Implementation>{publicImplementationMethod<TInterface>(TInterfaceparameter)whereTInterface:class=>newImplementation();}

Reproduction Steps

  1. Create iOS project via templates (dotnet new ios)
  2. Add <MtouchInterpreter>-all</MtouchInterpreter> to the iOS project file
  3. Add the code snippet mentioned in description somewhere in the project.
  4. Build project and run application on a physical device.

Expected behavior

Code runs fine.

Actual behavior

Code fails when the delegate is created, with the following crash report:

=================================================================
Native Crash Reporting
=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================
=================================================================
Native stacktrace:
=================================================================
0x10637fe40 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x10636b2f8 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x1063508f4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x201e4ba90 - /usr/lib/system/libsystem_platform.dylib : <redacted>
0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x1063570a0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x105b4de38 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
0x105bc4040 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x1062a7300 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x1062a92a4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x1063bedb0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x1063beaf4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x1b618da50 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b618d174 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b618c150 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b618bd9c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b5ed1e74 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UIScenePerformActionsWithLifecycleActionMask
0x1b6213d78 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b60c4adc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b60c4904 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b60c44b4 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b60c4380 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b67a856c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b6842568 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UISceneSettingsDiffActionPerformChangesWithTransitionContextAndCompletion
0x1b5f70374 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b63e3294 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b60429a0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b6042810 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b6041d64 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b6041af0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1c99e0e90 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
0x1c9a208f8 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
0x1c99e4c24 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
0x1c9a20530 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
0x1bb280f88 - /usr/lib/system/libdispatch.dylib : <redacted>
0x1bb284a08 - /usr/lib/system/libdispatch.dylib : <redacted>
0x1c99eed40 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
0x1c99ee8dc - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
0x1c99f1184 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
0x1b3d34f24 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
0x1b3d412fc - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
0x1b3cc5220 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
0x1b3cdab7c - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
0x1b3cdfeb0 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : CFRunLoopRunSpecific
0x1eded5368 - /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices : GSEventRunModal
0x1b61d5668 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
0x1b61d52cc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : UIApplicationMain
0x106139768 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_UIApplicationMain
0x105bb295c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
0x1060c6260 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x1062a5a64 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x1062ac114 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x106358614 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x106144578 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_log
0x1063bd850 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
0x1d25d8960 - /usr/lib/dyld : <redacted>
=================================================================
Basic Fault Address Reporting
=================================================================
Memory around native instruction pointer (0x10638138c):0x10638137c a9 12 40 f9 1f 01 00 f1 24 19 40 fa e0 01 00 54 ..@.....$.@....T
0x10638138c 09 01 40 79 0a 88 80 52 5f 01 29 6a 61 01 00 54 ..@y...R_.)ja..T
0x10638139c 00 05 40 f9 6d 79 fb 97 d4 02 40 f9 e0 00 38 36 ..@.my....@...86
0x1063813ac a8 12 40 f9 01 01 40 f9 e0 03 14 aa 2a 2d 00 94 ..@...@.....*-..
=================================================================
Managed Stacktrace:
=================================================================
at <unknown> <0xffffffff>
at System.Object:__icall_wrapper_ves_icall_mono_delegate_ctor <0x00007>
at iOSSandbox.AppDelegate:FinishedLaunching <0x00233>
at System.Object:runtime_invoke_dynamic <0x00127>
at <unknown> <0xffffffff>
at UIKit.UIApplication:xamarin_UIApplicationMain <0x00007>
at UIKit.UIApplication:UIApplicationMain <0x0005b>
at UIKit.UIApplication:Main <0x00107>
at Program:<Main>$ <0x0003f>
at System.Object:runtime_invoke_dynamic <0x00127>
=================================================================

Regression?

No response

Known Workarounds

No response

Configuration

.NET SDK:
Version: 8.0.100-preview.6.23330.14
Commit: ba97796b8f
Runtime Environment:
OS Name: Mac OS X
OS Version: 13.3
OS Platform: Darwin
RID: osx.13-arm64
Base Path: /usr/local/share/dotnet/sdk/8.0.100-preview.6.23330.14/
.NET workloads installed:
[ios]
Installation Source: SDK 8.0.100-preview.6
Manifest Version: 16.4.8646-net8-p6/8.0.100-preview.6
Manifest Path: /usr/local/share/dotnet/sdk-manifests/8.0.100-preview.6/microsoft.net.sdk.ios/WorkloadManifest.json
Install Type: FileBased
Host:
Version: 8.0.0-preview.6.23329.7
Architecture: arm64
Commit: 5340be2ccc
.NET SDKs installed:
6.0.406 [/usr/local/share/dotnet/sdk]
7.0.201 [/usr/local/share/dotnet/sdk]
8.0.100-preview.5.23303.2 [/usr/local/share/dotnet/sdk]
8.0.100-preview.6.23330.14 [/usr/local/share/dotnet/sdk]
.NET runtimes installed:
Microsoft.AspNetCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 8.0.0-preview.5.23302.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 8.0.0-preview.6.23329.11 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.0-preview.5.23280.8 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.0-preview.6.23329.7 [/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

Not sure whether it's specific to my configuration.

Other information

No response

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

    , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
     blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
    }
    } catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
    })();
    (function(){
    try {
    var __m = "github.com";
    var __re = new RegExp('^' + "github\\.com" + '
    
    Skip to content

    __icall_wrapper_ves_icall_mono_delegate_ctor can lead to SIGSEGV on iOS with MtouchInterpreter=-all #89359

    Description

    @frenzibyte

    Description

    The following code snippet results in a SIGSEGV on iOS when building with <MtouchInterpreter>-all</MtouchInterpreter>.

    // obj must be 'IInterface<Implementation>', can't repro when declaring as 'Implementation'IInterface<Implementation>obj=newImplementation();Func<object,Implementation>action=obj.Method;Action.Invoke(default!);publicinterfaceIInterface<outTValue>{TValueMethod<TInterface>(TInterfaceparameter)whereTInterface:class;// constriant required, any constraint still repros}// implementation must be structpublicstructImplementation:IInterface<Implementation>{publicImplementationMethod<TInterface>(TInterfaceparameter)whereTInterface:class=>newImplementation();}

    Reproduction Steps

    1. Create iOS project via templates (dotnet new ios)
    2. Add <MtouchInterpreter>-all</MtouchInterpreter> to the iOS project file
    3. Add the code snippet mentioned in description somewhere in the project.
    4. Build project and run application on a physical device.

    Expected behavior

    Code runs fine.

    Actual behavior

    Code fails when the delegate is created, with the following crash report:

    =================================================================
    Native Crash Reporting
    =================================================================
    Got a SIGSEGV while executing native code. This usually indicates
    a fatal error in the mono runtime or one of the native libraries
    used by your application.
    =================================================================
    =================================================================
    Native stacktrace:
    =================================================================
    0x10637fe40 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x10636b2f8 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x1063508f4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x201e4ba90 - /usr/lib/system/libsystem_platform.dylib : <redacted>
    0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x1063570a0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x105b4de38 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
    0x105bc4040 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
    0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x1062a7300 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x1062a92a4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x1063bedb0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x1063beaf4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x1b618da50 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b618d174 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b618c150 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b618bd9c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b5ed1e74 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UIScenePerformActionsWithLifecycleActionMask
    0x1b6213d78 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b60c4adc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b60c4904 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b60c44b4 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b60c4380 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b67a856c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b6842568 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UISceneSettingsDiffActionPerformChangesWithTransitionContextAndCompletion
    0x1b5f70374 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b63e3294 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b60429a0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b6042810 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b6041d64 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b6041af0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1c99e0e90 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
    0x1c9a208f8 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
    0x1c99e4c24 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
    0x1c9a20530 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
    0x1bb280f88 - /usr/lib/system/libdispatch.dylib : <redacted>
    0x1bb284a08 - /usr/lib/system/libdispatch.dylib : <redacted>
    0x1c99eed40 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
    0x1c99ee8dc - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
    0x1c99f1184 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
    0x1b3d34f24 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
    0x1b3d412fc - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
    0x1b3cc5220 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
    0x1b3cdab7c - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
    0x1b3cdfeb0 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : CFRunLoopRunSpecific
    0x1eded5368 - /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices : GSEventRunModal
    0x1b61d5668 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
    0x1b61d52cc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : UIApplicationMain
    0x106139768 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_UIApplicationMain
    0x105bb295c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
    0x1060c6260 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
    0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x1062a5a64 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x1062ac114 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x106358614 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x106144578 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_log
    0x1063bd850 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
    0x1d25d8960 - /usr/lib/dyld : <redacted>
    =================================================================
    Basic Fault Address Reporting
    =================================================================
    Memory around native instruction pointer (0x10638138c):0x10638137c a9 12 40 f9 1f 01 00 f1 24 19 40 fa e0 01 00 54 ..@.....$.@....T
    0x10638138c 09 01 40 79 0a 88 80 52 5f 01 29 6a 61 01 00 54 ..@y...R_.)ja..T
    0x10638139c 00 05 40 f9 6d 79 fb 97 d4 02 40 f9 e0 00 38 36 ..@.my....@...86
    0x1063813ac a8 12 40 f9 01 01 40 f9 e0 03 14 aa 2a 2d 00 94 ..@...@.....*-..
    =================================================================
    Managed Stacktrace:
    =================================================================
    at <unknown> <0xffffffff>
    at System.Object:__icall_wrapper_ves_icall_mono_delegate_ctor <0x00007>
    at iOSSandbox.AppDelegate:FinishedLaunching <0x00233>
    at System.Object:runtime_invoke_dynamic <0x00127>
    at <unknown> <0xffffffff>
    at UIKit.UIApplication:xamarin_UIApplicationMain <0x00007>
    at UIKit.UIApplication:UIApplicationMain <0x0005b>
    at UIKit.UIApplication:Main <0x00107>
    at Program:<Main>$ <0x0003f>
    at System.Object:runtime_invoke_dynamic <0x00127>
    =================================================================
    

    Regression?

    No response

    Known Workarounds

    No response

    Configuration

    .NET SDK:
    Version: 8.0.100-preview.6.23330.14
    Commit: ba97796b8f
    Runtime Environment:
    OS Name: Mac OS X
    OS Version: 13.3
    OS Platform: Darwin
    RID: osx.13-arm64
    Base Path: /usr/local/share/dotnet/sdk/8.0.100-preview.6.23330.14/
    .NET workloads installed:
    [ios]
    Installation Source: SDK 8.0.100-preview.6
    Manifest Version: 16.4.8646-net8-p6/8.0.100-preview.6
    Manifest Path: /usr/local/share/dotnet/sdk-manifests/8.0.100-preview.6/microsoft.net.sdk.ios/WorkloadManifest.json
    Install Type: FileBased
    Host:
    Version: 8.0.0-preview.6.23329.7
    Architecture: arm64
    Commit: 5340be2ccc
    .NET SDKs installed:
    6.0.406 [/usr/local/share/dotnet/sdk]
    7.0.201 [/usr/local/share/dotnet/sdk]
    8.0.100-preview.5.23303.2 [/usr/local/share/dotnet/sdk]
    8.0.100-preview.6.23330.14 [/usr/local/share/dotnet/sdk]
    .NET runtimes installed:
    Microsoft.AspNetCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
    Microsoft.AspNetCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
    Microsoft.AspNetCore.App 8.0.0-preview.5.23302.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
    Microsoft.AspNetCore.App 8.0.0-preview.6.23329.11 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
    Microsoft.NETCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
    Microsoft.NETCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
    Microsoft.NETCore.App 8.0.0-preview.5.23280.8 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
    Microsoft.NETCore.App 8.0.0-preview.6.23329.7 [/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
    

    Not sure whether it's specific to my configuration.

    Other information

    No response

    Metadata

    Metadata

    Assignees

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
      Skip to content

      __icall_wrapper_ves_icall_mono_delegate_ctor can lead to SIGSEGV on iOS with MtouchInterpreter=-all #89359

      Description

      @frenzibyte

      Description

      The following code snippet results in a SIGSEGV on iOS when building with <MtouchInterpreter>-all</MtouchInterpreter>.

      // obj must be 'IInterface<Implementation>', can't repro when declaring as 'Implementation'IInterface<Implementation>obj=newImplementation();Func<object,Implementation>action=obj.Method;Action.Invoke(default!);publicinterfaceIInterface<outTValue>{TValueMethod<TInterface>(TInterfaceparameter)whereTInterface:class;// constriant required, any constraint still repros}// implementation must be structpublicstructImplementation:IInterface<Implementation>{publicImplementationMethod<TInterface>(TInterfaceparameter)whereTInterface:class=>newImplementation();}

      Reproduction Steps

      1. Create iOS project via templates (dotnet new ios)
      2. Add <MtouchInterpreter>-all</MtouchInterpreter> to the iOS project file
      3. Add the code snippet mentioned in description somewhere in the project.
      4. Build project and run application on a physical device.

      Expected behavior

      Code runs fine.

      Actual behavior

      Code fails when the delegate is created, with the following crash report:

      =================================================================
      Native Crash Reporting
      =================================================================
      Got a SIGSEGV while executing native code. This usually indicates
      a fatal error in the mono runtime or one of the native libraries
      used by your application.
      =================================================================
      =================================================================
      Native stacktrace:
      =================================================================
      0x10637fe40 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x10636b2f8 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x1063508f4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x201e4ba90 - /usr/lib/system/libsystem_platform.dylib : <redacted>
      0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x1063570a0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x105b4de38 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
      0x105bc4040 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
      0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x1062a7300 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x1062a92a4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x1063bedb0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x1063beaf4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x1b618da50 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b618d174 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b618c150 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b618bd9c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b5ed1e74 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UIScenePerformActionsWithLifecycleActionMask
      0x1b6213d78 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b60c4adc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b60c4904 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b60c44b4 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b60c4380 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b67a856c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b6842568 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UISceneSettingsDiffActionPerformChangesWithTransitionContextAndCompletion
      0x1b5f70374 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b63e3294 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b60429a0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b6042810 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b6041d64 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b6041af0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1c99e0e90 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
      0x1c9a208f8 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
      0x1c99e4c24 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
      0x1c9a20530 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
      0x1bb280f88 - /usr/lib/system/libdispatch.dylib : <redacted>
      0x1bb284a08 - /usr/lib/system/libdispatch.dylib : <redacted>
      0x1c99eed40 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
      0x1c99ee8dc - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
      0x1c99f1184 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
      0x1b3d34f24 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
      0x1b3d412fc - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
      0x1b3cc5220 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
      0x1b3cdab7c - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
      0x1b3cdfeb0 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : CFRunLoopRunSpecific
      0x1eded5368 - /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices : GSEventRunModal
      0x1b61d5668 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
      0x1b61d52cc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : UIApplicationMain
      0x106139768 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_UIApplicationMain
      0x105bb295c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
      0x1060c6260 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
      0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x1062a5a64 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x1062ac114 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x106358614 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x106144578 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_log
      0x1063bd850 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
      0x1d25d8960 - /usr/lib/dyld : <redacted>
      =================================================================
      Basic Fault Address Reporting
      =================================================================
      Memory around native instruction pointer (0x10638138c):0x10638137c a9 12 40 f9 1f 01 00 f1 24 19 40 fa e0 01 00 54 ..@.....$.@....T
      0x10638138c 09 01 40 79 0a 88 80 52 5f 01 29 6a 61 01 00 54 ..@y...R_.)ja..T
      0x10638139c 00 05 40 f9 6d 79 fb 97 d4 02 40 f9 e0 00 38 36 ..@.my....@...86
      0x1063813ac a8 12 40 f9 01 01 40 f9 e0 03 14 aa 2a 2d 00 94 ..@...@.....*-..
      =================================================================
      Managed Stacktrace:
      =================================================================
      at <unknown> <0xffffffff>
      at System.Object:__icall_wrapper_ves_icall_mono_delegate_ctor <0x00007>
      at iOSSandbox.AppDelegate:FinishedLaunching <0x00233>
      at System.Object:runtime_invoke_dynamic <0x00127>
      at <unknown> <0xffffffff>
      at UIKit.UIApplication:xamarin_UIApplicationMain <0x00007>
      at UIKit.UIApplication:UIApplicationMain <0x0005b>
      at UIKit.UIApplication:Main <0x00107>
      at Program:<Main>$ <0x0003f>
      at System.Object:runtime_invoke_dynamic <0x00127>
      =================================================================
      

      Regression?

      No response

      Known Workarounds

      No response

      Configuration

      .NET SDK:
      Version: 8.0.100-preview.6.23330.14
      Commit: ba97796b8f
      Runtime Environment:
      OS Name: Mac OS X
      OS Version: 13.3
      OS Platform: Darwin
      RID: osx.13-arm64
      Base Path: /usr/local/share/dotnet/sdk/8.0.100-preview.6.23330.14/
      .NET workloads installed:
      [ios]
      Installation Source: SDK 8.0.100-preview.6
      Manifest Version: 16.4.8646-net8-p6/8.0.100-preview.6
      Manifest Path: /usr/local/share/dotnet/sdk-manifests/8.0.100-preview.6/microsoft.net.sdk.ios/WorkloadManifest.json
      Install Type: FileBased
      Host:
      Version: 8.0.0-preview.6.23329.7
      Architecture: arm64
      Commit: 5340be2ccc
      .NET SDKs installed:
      6.0.406 [/usr/local/share/dotnet/sdk]
      7.0.201 [/usr/local/share/dotnet/sdk]
      8.0.100-preview.5.23303.2 [/usr/local/share/dotnet/sdk]
      8.0.100-preview.6.23330.14 [/usr/local/share/dotnet/sdk]
      .NET runtimes installed:
      Microsoft.AspNetCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
      Microsoft.AspNetCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
      Microsoft.AspNetCore.App 8.0.0-preview.5.23302.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
      Microsoft.AspNetCore.App 8.0.0-preview.6.23329.11 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
      Microsoft.NETCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
      Microsoft.NETCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
      Microsoft.NETCore.App 8.0.0-preview.5.23280.8 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
      Microsoft.NETCore.App 8.0.0-preview.6.23329.7 [/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
      

      Not sure whether it's specific to my configuration.

      Other information

      No response

      Metadata

      Metadata

      Assignees

      Type

      No type

      Projects

      No projects

        Milestone

        Relationships

        None yet

        Development

        No branches or pull requests

        Issue actions

        , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
        Skip to content

        __icall_wrapper_ves_icall_mono_delegate_ctor can lead to SIGSEGV on iOS with MtouchInterpreter=-all #89359

        Description

        @frenzibyte

        Description

        The following code snippet results in a SIGSEGV on iOS when building with <MtouchInterpreter>-all</MtouchInterpreter>.

        // obj must be 'IInterface<Implementation>', can't repro when declaring as 'Implementation'IInterface<Implementation>obj=newImplementation();Func<object,Implementation>action=obj.Method;Action.Invoke(default!);publicinterfaceIInterface<outTValue>{TValueMethod<TInterface>(TInterfaceparameter)whereTInterface:class;// constriant required, any constraint still repros}// implementation must be structpublicstructImplementation:IInterface<Implementation>{publicImplementationMethod<TInterface>(TInterfaceparameter)whereTInterface:class=>newImplementation();}

        Reproduction Steps

        1. Create iOS project via templates (dotnet new ios)
        2. Add <MtouchInterpreter>-all</MtouchInterpreter> to the iOS project file
        3. Add the code snippet mentioned in description somewhere in the project.
        4. Build project and run application on a physical device.

        Expected behavior

        Code runs fine.

        Actual behavior

        Code fails when the delegate is created, with the following crash report:

        =================================================================
        Native Crash Reporting
        =================================================================
        Got a SIGSEGV while executing native code. This usually indicates
        a fatal error in the mono runtime or one of the native libraries
        used by your application.
        =================================================================
        =================================================================
        Native stacktrace:
        =================================================================
        0x10637fe40 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x10636b2f8 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x1063508f4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x201e4ba90 - /usr/lib/system/libsystem_platform.dylib : <redacted>
        0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x1063570a0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x105b4de38 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
        0x105bc4040 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
        0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x1062a7300 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x1062a92a4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x1063bedb0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x1063beaf4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x1b618da50 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b618d174 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b618c150 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b618bd9c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b5ed1e74 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UIScenePerformActionsWithLifecycleActionMask
        0x1b6213d78 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b60c4adc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b60c4904 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b60c44b4 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b60c4380 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b67a856c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b6842568 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UISceneSettingsDiffActionPerformChangesWithTransitionContextAndCompletion
        0x1b5f70374 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b63e3294 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b60429a0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b6042810 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b6041d64 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b6041af0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1c99e0e90 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
        0x1c9a208f8 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
        0x1c99e4c24 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
        0x1c9a20530 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
        0x1bb280f88 - /usr/lib/system/libdispatch.dylib : <redacted>
        0x1bb284a08 - /usr/lib/system/libdispatch.dylib : <redacted>
        0x1c99eed40 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
        0x1c99ee8dc - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
        0x1c99f1184 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
        0x1b3d34f24 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
        0x1b3d412fc - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
        0x1b3cc5220 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
        0x1b3cdab7c - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
        0x1b3cdfeb0 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : CFRunLoopRunSpecific
        0x1eded5368 - /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices : GSEventRunModal
        0x1b61d5668 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
        0x1b61d52cc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : UIApplicationMain
        0x106139768 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_UIApplicationMain
        0x105bb295c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
        0x1060c6260 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
        0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x1062a5a64 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x1062ac114 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x106358614 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x106144578 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_log
        0x1063bd850 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
        0x1d25d8960 - /usr/lib/dyld : <redacted>
        =================================================================
        Basic Fault Address Reporting
        =================================================================
        Memory around native instruction pointer (0x10638138c):0x10638137c a9 12 40 f9 1f 01 00 f1 24 19 40 fa e0 01 00 54 ..@.....$.@....T
        0x10638138c 09 01 40 79 0a 88 80 52 5f 01 29 6a 61 01 00 54 ..@y...R_.)ja..T
        0x10638139c 00 05 40 f9 6d 79 fb 97 d4 02 40 f9 e0 00 38 36 ..@.my....@...86
        0x1063813ac a8 12 40 f9 01 01 40 f9 e0 03 14 aa 2a 2d 00 94 ..@...@.....*-..
        =================================================================
        Managed Stacktrace:
        =================================================================
        at <unknown> <0xffffffff>
        at System.Object:__icall_wrapper_ves_icall_mono_delegate_ctor <0x00007>
        at iOSSandbox.AppDelegate:FinishedLaunching <0x00233>
        at System.Object:runtime_invoke_dynamic <0x00127>
        at <unknown> <0xffffffff>
        at UIKit.UIApplication:xamarin_UIApplicationMain <0x00007>
        at UIKit.UIApplication:UIApplicationMain <0x0005b>
        at UIKit.UIApplication:Main <0x00107>
        at Program:<Main>$ <0x0003f>
        at System.Object:runtime_invoke_dynamic <0x00127>
        =================================================================
        

        Regression?

        No response

        Known Workarounds

        No response

        Configuration

        .NET SDK:
        Version: 8.0.100-preview.6.23330.14
        Commit: ba97796b8f
        Runtime Environment:
        OS Name: Mac OS X
        OS Version: 13.3
        OS Platform: Darwin
        RID: osx.13-arm64
        Base Path: /usr/local/share/dotnet/sdk/8.0.100-preview.6.23330.14/
        .NET workloads installed:
        [ios]
        Installation Source: SDK 8.0.100-preview.6
        Manifest Version: 16.4.8646-net8-p6/8.0.100-preview.6
        Manifest Path: /usr/local/share/dotnet/sdk-manifests/8.0.100-preview.6/microsoft.net.sdk.ios/WorkloadManifest.json
        Install Type: FileBased
        Host:
        Version: 8.0.0-preview.6.23329.7
        Architecture: arm64
        Commit: 5340be2ccc
        .NET SDKs installed:
        6.0.406 [/usr/local/share/dotnet/sdk]
        7.0.201 [/usr/local/share/dotnet/sdk]
        8.0.100-preview.5.23303.2 [/usr/local/share/dotnet/sdk]
        8.0.100-preview.6.23330.14 [/usr/local/share/dotnet/sdk]
        .NET runtimes installed:
        Microsoft.AspNetCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
        Microsoft.AspNetCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
        Microsoft.AspNetCore.App 8.0.0-preview.5.23302.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
        Microsoft.AspNetCore.App 8.0.0-preview.6.23329.11 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
        Microsoft.NETCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
        Microsoft.NETCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
        Microsoft.NETCore.App 8.0.0-preview.5.23280.8 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
        Microsoft.NETCore.App 8.0.0-preview.6.23329.7 [/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
        

        Not sure whether it's specific to my configuration.

        Other information

        No response

        Metadata

        Metadata

        Assignees

        Type

        No type

        Projects

        No projects

          Milestone

          Relationships

          None yet

          Development

          No branches or pull requests

          Issue actions

          , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
          Skip to content

          __icall_wrapper_ves_icall_mono_delegate_ctor can lead to SIGSEGV on iOS with MtouchInterpreter=-all #89359

          Description

          @frenzibyte

          Description

          The following code snippet results in a SIGSEGV on iOS when building with <MtouchInterpreter>-all</MtouchInterpreter>.

          // obj must be 'IInterface<Implementation>', can't repro when declaring as 'Implementation'IInterface<Implementation>obj=newImplementation();Func<object,Implementation>action=obj.Method;Action.Invoke(default!);publicinterfaceIInterface<outTValue>{TValueMethod<TInterface>(TInterfaceparameter)whereTInterface:class;// constriant required, any constraint still repros}// implementation must be structpublicstructImplementation:IInterface<Implementation>{publicImplementationMethod<TInterface>(TInterfaceparameter)whereTInterface:class=>newImplementation();}

          Reproduction Steps

          1. Create iOS project via templates (dotnet new ios)
          2. Add <MtouchInterpreter>-all</MtouchInterpreter> to the iOS project file
          3. Add the code snippet mentioned in description somewhere in the project.
          4. Build project and run application on a physical device.

          Expected behavior

          Code runs fine.

          Actual behavior

          Code fails when the delegate is created, with the following crash report:

          =================================================================
          Native Crash Reporting
          =================================================================
          Got a SIGSEGV while executing native code. This usually indicates
          a fatal error in the mono runtime or one of the native libraries
          used by your application.
          =================================================================
          =================================================================
          Native stacktrace:
          =================================================================
          0x10637fe40 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x10636b2f8 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x1063508f4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x201e4ba90 - /usr/lib/system/libsystem_platform.dylib : <redacted>
          0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x1063570a0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x105b4de38 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
          0x105bc4040 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
          0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x1062a7300 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x1062a92a4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x1063bedb0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x1063beaf4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x1b618da50 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b618d174 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b618c150 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b618bd9c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b5ed1e74 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UIScenePerformActionsWithLifecycleActionMask
          0x1b6213d78 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b60c4adc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b60c4904 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b60c44b4 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b60c4380 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b67a856c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b6842568 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UISceneSettingsDiffActionPerformChangesWithTransitionContextAndCompletion
          0x1b5f70374 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b63e3294 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b60429a0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b6042810 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b6041d64 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b6041af0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1c99e0e90 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
          0x1c9a208f8 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
          0x1c99e4c24 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
          0x1c9a20530 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
          0x1bb280f88 - /usr/lib/system/libdispatch.dylib : <redacted>
          0x1bb284a08 - /usr/lib/system/libdispatch.dylib : <redacted>
          0x1c99eed40 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
          0x1c99ee8dc - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
          0x1c99f1184 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
          0x1b3d34f24 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
          0x1b3d412fc - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
          0x1b3cc5220 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
          0x1b3cdab7c - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
          0x1b3cdfeb0 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : CFRunLoopRunSpecific
          0x1eded5368 - /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices : GSEventRunModal
          0x1b61d5668 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
          0x1b61d52cc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : UIApplicationMain
          0x106139768 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_UIApplicationMain
          0x105bb295c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
          0x1060c6260 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
          0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x1062a5a64 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x1062ac114 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x106358614 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x106144578 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_log
          0x1063bd850 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
          0x1d25d8960 - /usr/lib/dyld : <redacted>
          =================================================================
          Basic Fault Address Reporting
          =================================================================
          Memory around native instruction pointer (0x10638138c):0x10638137c a9 12 40 f9 1f 01 00 f1 24 19 40 fa e0 01 00 54 ..@.....$.@....T
          0x10638138c 09 01 40 79 0a 88 80 52 5f 01 29 6a 61 01 00 54 ..@y...R_.)ja..T
          0x10638139c 00 05 40 f9 6d 79 fb 97 d4 02 40 f9 e0 00 38 36 ..@.my....@...86
          0x1063813ac a8 12 40 f9 01 01 40 f9 e0 03 14 aa 2a 2d 00 94 ..@...@.....*-..
          =================================================================
          Managed Stacktrace:
          =================================================================
          at <unknown> <0xffffffff>
          at System.Object:__icall_wrapper_ves_icall_mono_delegate_ctor <0x00007>
          at iOSSandbox.AppDelegate:FinishedLaunching <0x00233>
          at System.Object:runtime_invoke_dynamic <0x00127>
          at <unknown> <0xffffffff>
          at UIKit.UIApplication:xamarin_UIApplicationMain <0x00007>
          at UIKit.UIApplication:UIApplicationMain <0x0005b>
          at UIKit.UIApplication:Main <0x00107>
          at Program:<Main>$ <0x0003f>
          at System.Object:runtime_invoke_dynamic <0x00127>
          =================================================================
          

          Regression?

          No response

          Known Workarounds

          No response

          Configuration

          .NET SDK:
          Version: 8.0.100-preview.6.23330.14
          Commit: ba97796b8f
          Runtime Environment:
          OS Name: Mac OS X
          OS Version: 13.3
          OS Platform: Darwin
          RID: osx.13-arm64
          Base Path: /usr/local/share/dotnet/sdk/8.0.100-preview.6.23330.14/
          .NET workloads installed:
          [ios]
          Installation Source: SDK 8.0.100-preview.6
          Manifest Version: 16.4.8646-net8-p6/8.0.100-preview.6
          Manifest Path: /usr/local/share/dotnet/sdk-manifests/8.0.100-preview.6/microsoft.net.sdk.ios/WorkloadManifest.json
          Install Type: FileBased
          Host:
          Version: 8.0.0-preview.6.23329.7
          Architecture: arm64
          Commit: 5340be2ccc
          .NET SDKs installed:
          6.0.406 [/usr/local/share/dotnet/sdk]
          7.0.201 [/usr/local/share/dotnet/sdk]
          8.0.100-preview.5.23303.2 [/usr/local/share/dotnet/sdk]
          8.0.100-preview.6.23330.14 [/usr/local/share/dotnet/sdk]
          .NET runtimes installed:
          Microsoft.AspNetCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
          Microsoft.AspNetCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
          Microsoft.AspNetCore.App 8.0.0-preview.5.23302.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
          Microsoft.AspNetCore.App 8.0.0-preview.6.23329.11 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
          Microsoft.NETCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
          Microsoft.NETCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
          Microsoft.NETCore.App 8.0.0-preview.5.23280.8 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
          Microsoft.NETCore.App 8.0.0-preview.6.23329.7 [/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
          

          Not sure whether it's specific to my configuration.

          Other information

          No response

          Metadata

          Metadata

          Assignees

          Type

          No type

          Projects

          No projects

            Milestone

            Relationships

            None yet

            Development

            No branches or pull requests

            Issue actions

            , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
            Skip to content

            __icall_wrapper_ves_icall_mono_delegate_ctor can lead to SIGSEGV on iOS with MtouchInterpreter=-all #89359

            Description

            @frenzibyte

            Description

            The following code snippet results in a SIGSEGV on iOS when building with <MtouchInterpreter>-all</MtouchInterpreter>.

            // obj must be 'IInterface<Implementation>', can't repro when declaring as 'Implementation'IInterface<Implementation>obj=newImplementation();Func<object,Implementation>action=obj.Method;Action.Invoke(default!);publicinterfaceIInterface<outTValue>{TValueMethod<TInterface>(TInterfaceparameter)whereTInterface:class;// constriant required, any constraint still repros}// implementation must be structpublicstructImplementation:IInterface<Implementation>{publicImplementationMethod<TInterface>(TInterfaceparameter)whereTInterface:class=>newImplementation();}

            Reproduction Steps

            1. Create iOS project via templates (dotnet new ios)
            2. Add <MtouchInterpreter>-all</MtouchInterpreter> to the iOS project file
            3. Add the code snippet mentioned in description somewhere in the project.
            4. Build project and run application on a physical device.

            Expected behavior

            Code runs fine.

            Actual behavior

            Code fails when the delegate is created, with the following crash report:

            =================================================================
            Native Crash Reporting
            =================================================================
            Got a SIGSEGV while executing native code. This usually indicates
            a fatal error in the mono runtime or one of the native libraries
            used by your application.
            =================================================================
            =================================================================
            Native stacktrace:
            =================================================================
            0x10637fe40 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x10636b2f8 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x1063508f4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x201e4ba90 - /usr/lib/system/libsystem_platform.dylib : <redacted>
            0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x1063570a0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x105b4de38 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
            0x105bc4040 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
            0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x1062a7300 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x1062a92a4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x1063bedb0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x1063beaf4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x1b618da50 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b618d174 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b618c150 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b618bd9c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b5ed1e74 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UIScenePerformActionsWithLifecycleActionMask
            0x1b6213d78 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b60c4adc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b60c4904 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b60c44b4 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b60c4380 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b67a856c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b6842568 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UISceneSettingsDiffActionPerformChangesWithTransitionContextAndCompletion
            0x1b5f70374 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b63e3294 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b60429a0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b6042810 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b6041d64 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b6041af0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1c99e0e90 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
            0x1c9a208f8 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
            0x1c99e4c24 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
            0x1c9a20530 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
            0x1bb280f88 - /usr/lib/system/libdispatch.dylib : <redacted>
            0x1bb284a08 - /usr/lib/system/libdispatch.dylib : <redacted>
            0x1c99eed40 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
            0x1c99ee8dc - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
            0x1c99f1184 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
            0x1b3d34f24 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
            0x1b3d412fc - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
            0x1b3cc5220 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
            0x1b3cdab7c - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
            0x1b3cdfeb0 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : CFRunLoopRunSpecific
            0x1eded5368 - /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices : GSEventRunModal
            0x1b61d5668 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
            0x1b61d52cc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : UIApplicationMain
            0x106139768 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_UIApplicationMain
            0x105bb295c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
            0x1060c6260 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
            0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x1062a5a64 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x1062ac114 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x106358614 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x106144578 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_log
            0x1063bd850 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
            0x1d25d8960 - /usr/lib/dyld : <redacted>
            =================================================================
            Basic Fault Address Reporting
            =================================================================
            Memory around native instruction pointer (0x10638138c):0x10638137c a9 12 40 f9 1f 01 00 f1 24 19 40 fa e0 01 00 54 ..@.....$.@....T
            0x10638138c 09 01 40 79 0a 88 80 52 5f 01 29 6a 61 01 00 54 ..@y...R_.)ja..T
            0x10638139c 00 05 40 f9 6d 79 fb 97 d4 02 40 f9 e0 00 38 36 ..@.my....@...86
            0x1063813ac a8 12 40 f9 01 01 40 f9 e0 03 14 aa 2a 2d 00 94 ..@...@.....*-..
            =================================================================
            Managed Stacktrace:
            =================================================================
            at <unknown> <0xffffffff>
            at System.Object:__icall_wrapper_ves_icall_mono_delegate_ctor <0x00007>
            at iOSSandbox.AppDelegate:FinishedLaunching <0x00233>
            at System.Object:runtime_invoke_dynamic <0x00127>
            at <unknown> <0xffffffff>
            at UIKit.UIApplication:xamarin_UIApplicationMain <0x00007>
            at UIKit.UIApplication:UIApplicationMain <0x0005b>
            at UIKit.UIApplication:Main <0x00107>
            at Program:<Main>$ <0x0003f>
            at System.Object:runtime_invoke_dynamic <0x00127>
            =================================================================
            

            Regression?

            No response

            Known Workarounds

            No response

            Configuration

            .NET SDK:
            Version: 8.0.100-preview.6.23330.14
            Commit: ba97796b8f
            Runtime Environment:
            OS Name: Mac OS X
            OS Version: 13.3
            OS Platform: Darwin
            RID: osx.13-arm64
            Base Path: /usr/local/share/dotnet/sdk/8.0.100-preview.6.23330.14/
            .NET workloads installed:
            [ios]
            Installation Source: SDK 8.0.100-preview.6
            Manifest Version: 16.4.8646-net8-p6/8.0.100-preview.6
            Manifest Path: /usr/local/share/dotnet/sdk-manifests/8.0.100-preview.6/microsoft.net.sdk.ios/WorkloadManifest.json
            Install Type: FileBased
            Host:
            Version: 8.0.0-preview.6.23329.7
            Architecture: arm64
            Commit: 5340be2ccc
            .NET SDKs installed:
            6.0.406 [/usr/local/share/dotnet/sdk]
            7.0.201 [/usr/local/share/dotnet/sdk]
            8.0.100-preview.5.23303.2 [/usr/local/share/dotnet/sdk]
            8.0.100-preview.6.23330.14 [/usr/local/share/dotnet/sdk]
            .NET runtimes installed:
            Microsoft.AspNetCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
            Microsoft.AspNetCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
            Microsoft.AspNetCore.App 8.0.0-preview.5.23302.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
            Microsoft.AspNetCore.App 8.0.0-preview.6.23329.11 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
            Microsoft.NETCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
            Microsoft.NETCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
            Microsoft.NETCore.App 8.0.0-preview.5.23280.8 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
            Microsoft.NETCore.App 8.0.0-preview.6.23329.7 [/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
            

            Not sure whether it's specific to my configuration.

            Other information

            No response

            Metadata

            Metadata

            Assignees

            Type

            No type

            Projects

            No projects

              Milestone

              Relationships

              None yet

              Development

              No branches or pull requests

              Issue actions

              , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
              Skip to content

              __icall_wrapper_ves_icall_mono_delegate_ctor can lead to SIGSEGV on iOS with MtouchInterpreter=-all #89359

              Description

              @frenzibyte

              Description

              The following code snippet results in a SIGSEGV on iOS when building with <MtouchInterpreter>-all</MtouchInterpreter>.

              // obj must be 'IInterface<Implementation>', can't repro when declaring as 'Implementation'IInterface<Implementation>obj=newImplementation();Func<object,Implementation>action=obj.Method;Action.Invoke(default!);publicinterfaceIInterface<outTValue>{TValueMethod<TInterface>(TInterfaceparameter)whereTInterface:class;// constriant required, any constraint still repros}// implementation must be structpublicstructImplementation:IInterface<Implementation>{publicImplementationMethod<TInterface>(TInterfaceparameter)whereTInterface:class=>newImplementation();}

              Reproduction Steps

              1. Create iOS project via templates (dotnet new ios)
              2. Add <MtouchInterpreter>-all</MtouchInterpreter> to the iOS project file
              3. Add the code snippet mentioned in description somewhere in the project.
              4. Build project and run application on a physical device.

              Expected behavior

              Code runs fine.

              Actual behavior

              Code fails when the delegate is created, with the following crash report:

              =================================================================
              Native Crash Reporting
              =================================================================
              Got a SIGSEGV while executing native code. This usually indicates
              a fatal error in the mono runtime or one of the native libraries
              used by your application.
              =================================================================
              =================================================================
              Native stacktrace:
              =================================================================
              0x10637fe40 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x10636b2f8 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x1063508f4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x201e4ba90 - /usr/lib/system/libsystem_platform.dylib : <redacted>
              0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x1063570a0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x105b4de38 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
              0x105bc4040 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
              0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x1062a7300 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x1062a92a4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x1063bedb0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x1063beaf4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x1b618da50 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b618d174 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b618c150 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b618bd9c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b5ed1e74 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UIScenePerformActionsWithLifecycleActionMask
              0x1b6213d78 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b60c4adc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b60c4904 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b60c44b4 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b60c4380 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b67a856c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b6842568 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UISceneSettingsDiffActionPerformChangesWithTransitionContextAndCompletion
              0x1b5f70374 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b63e3294 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b60429a0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b6042810 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b6041d64 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b6041af0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1c99e0e90 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
              0x1c9a208f8 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
              0x1c99e4c24 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
              0x1c9a20530 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
              0x1bb280f88 - /usr/lib/system/libdispatch.dylib : <redacted>
              0x1bb284a08 - /usr/lib/system/libdispatch.dylib : <redacted>
              0x1c99eed40 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
              0x1c99ee8dc - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
              0x1c99f1184 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
              0x1b3d34f24 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
              0x1b3d412fc - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
              0x1b3cc5220 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
              0x1b3cdab7c - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
              0x1b3cdfeb0 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : CFRunLoopRunSpecific
              0x1eded5368 - /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices : GSEventRunModal
              0x1b61d5668 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
              0x1b61d52cc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : UIApplicationMain
              0x106139768 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_UIApplicationMain
              0x105bb295c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
              0x1060c6260 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
              0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x1062a5a64 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x1062ac114 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x106358614 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x106144578 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_log
              0x1063bd850 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
              0x1d25d8960 - /usr/lib/dyld : <redacted>
              =================================================================
              Basic Fault Address Reporting
              =================================================================
              Memory around native instruction pointer (0x10638138c):0x10638137c a9 12 40 f9 1f 01 00 f1 24 19 40 fa e0 01 00 54 ..@.....$.@....T
              0x10638138c 09 01 40 79 0a 88 80 52 5f 01 29 6a 61 01 00 54 ..@y...R_.)ja..T
              0x10638139c 00 05 40 f9 6d 79 fb 97 d4 02 40 f9 e0 00 38 36 ..@.my....@...86
              0x1063813ac a8 12 40 f9 01 01 40 f9 e0 03 14 aa 2a 2d 00 94 ..@...@.....*-..
              =================================================================
              Managed Stacktrace:
              =================================================================
              at <unknown> <0xffffffff>
              at System.Object:__icall_wrapper_ves_icall_mono_delegate_ctor <0x00007>
              at iOSSandbox.AppDelegate:FinishedLaunching <0x00233>
              at System.Object:runtime_invoke_dynamic <0x00127>
              at <unknown> <0xffffffff>
              at UIKit.UIApplication:xamarin_UIApplicationMain <0x00007>
              at UIKit.UIApplication:UIApplicationMain <0x0005b>
              at UIKit.UIApplication:Main <0x00107>
              at Program:<Main>$ <0x0003f>
              at System.Object:runtime_invoke_dynamic <0x00127>
              =================================================================
              

              Regression?

              No response

              Known Workarounds

              No response

              Configuration

              .NET SDK:
              Version: 8.0.100-preview.6.23330.14
              Commit: ba97796b8f
              Runtime Environment:
              OS Name: Mac OS X
              OS Version: 13.3
              OS Platform: Darwin
              RID: osx.13-arm64
              Base Path: /usr/local/share/dotnet/sdk/8.0.100-preview.6.23330.14/
              .NET workloads installed:
              [ios]
              Installation Source: SDK 8.0.100-preview.6
              Manifest Version: 16.4.8646-net8-p6/8.0.100-preview.6
              Manifest Path: /usr/local/share/dotnet/sdk-manifests/8.0.100-preview.6/microsoft.net.sdk.ios/WorkloadManifest.json
              Install Type: FileBased
              Host:
              Version: 8.0.0-preview.6.23329.7
              Architecture: arm64
              Commit: 5340be2ccc
              .NET SDKs installed:
              6.0.406 [/usr/local/share/dotnet/sdk]
              7.0.201 [/usr/local/share/dotnet/sdk]
              8.0.100-preview.5.23303.2 [/usr/local/share/dotnet/sdk]
              8.0.100-preview.6.23330.14 [/usr/local/share/dotnet/sdk]
              .NET runtimes installed:
              Microsoft.AspNetCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
              Microsoft.AspNetCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
              Microsoft.AspNetCore.App 8.0.0-preview.5.23302.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
              Microsoft.AspNetCore.App 8.0.0-preview.6.23329.11 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
              Microsoft.NETCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
              Microsoft.NETCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
              Microsoft.NETCore.App 8.0.0-preview.5.23280.8 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
              Microsoft.NETCore.App 8.0.0-preview.6.23329.7 [/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
              

              Not sure whether it's specific to my configuration.

              Other information

              No response

              Metadata

              Metadata

              Assignees

              Type

              No type

              Projects

              No projects

                Milestone

                Relationships

                None yet

                Development

                No branches or pull requests

                Issue actions

                , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
                Skip to content

                __icall_wrapper_ves_icall_mono_delegate_ctor can lead to SIGSEGV on iOS with MtouchInterpreter=-all #89359

                Description

                @frenzibyte

                Description

                The following code snippet results in a SIGSEGV on iOS when building with <MtouchInterpreter>-all</MtouchInterpreter>.

                // obj must be 'IInterface<Implementation>', can't repro when declaring as 'Implementation'IInterface<Implementation>obj=newImplementation();Func<object,Implementation>action=obj.Method;Action.Invoke(default!);publicinterfaceIInterface<outTValue>{TValueMethod<TInterface>(TInterfaceparameter)whereTInterface:class;// constriant required, any constraint still repros}// implementation must be structpublicstructImplementation:IInterface<Implementation>{publicImplementationMethod<TInterface>(TInterfaceparameter)whereTInterface:class=>newImplementation();}

                Reproduction Steps

                1. Create iOS project via templates (dotnet new ios)
                2. Add <MtouchInterpreter>-all</MtouchInterpreter> to the iOS project file
                3. Add the code snippet mentioned in description somewhere in the project.
                4. Build project and run application on a physical device.

                Expected behavior

                Code runs fine.

                Actual behavior

                Code fails when the delegate is created, with the following crash report:

                =================================================================
                Native Crash Reporting
                =================================================================
                Got a SIGSEGV while executing native code. This usually indicates
                a fatal error in the mono runtime or one of the native libraries
                used by your application.
                =================================================================
                =================================================================
                Native stacktrace:
                =================================================================
                0x10637fe40 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x10636b2f8 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x1063508f4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x201e4ba90 - /usr/lib/system/libsystem_platform.dylib : <redacted>
                0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x106353478 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x1063570a0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x105b4de38 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
                0x105bc4040 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
                0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x1062a7300 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x1062a92a4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x1063bedb0 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x1063beaf4 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x1b618da50 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b618d174 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b618c150 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b618bd9c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b5ed1e74 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UIScenePerformActionsWithLifecycleActionMask
                0x1b6213d78 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b60c4adc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b60c4904 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b60c44b4 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b60c4380 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b67a856c - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b6842568 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : _UISceneSettingsDiffActionPerformChangesWithTransitionContextAndCompletion
                0x1b5f70374 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b63e3294 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b60429a0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b6042810 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b6041d64 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b6041af0 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1c99e0e90 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
                0x1c9a208f8 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
                0x1c99e4c24 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
                0x1c9a20530 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
                0x1bb280f88 - /usr/lib/system/libdispatch.dylib : <redacted>
                0x1bb284a08 - /usr/lib/system/libdispatch.dylib : <redacted>
                0x1c99eed40 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
                0x1c99ee8dc - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
                0x1c99f1184 - /System/Library/PrivateFrameworks/FrontBoardServices.framework/FrontBoardServices : <redacted>
                0x1b3d34f24 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
                0x1b3d412fc - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
                0x1b3cc5220 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
                0x1b3cdab7c - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : <redacted>
                0x1b3cdfeb0 - /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation : CFRunLoopRunSpecific
                0x1eded5368 - /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices : GSEventRunModal
                0x1b61d5668 - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : <redacted>
                0x1b61d52cc - /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore : UIApplicationMain
                0x106139768 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_UIApplicationMain
                0x105bb295c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
                0x1060c6260 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox :
                0x106353a8c - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x1062a5a64 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x1062ac114 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x106358614 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x106144578 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : xamarin_log
                0x1063bd850 - /private/var/containers/Bundle/Application/089433BF-7560-442B-B8C0-2418DFB57BBC/PublicStaging.app/iOSSandbox : _ZNK3icu6number23NumberFormatterSettingsINS0_24LocalizedNumberFormatterEE10toSkeletonER10UErrorCode
                0x1d25d8960 - /usr/lib/dyld : <redacted>
                =================================================================
                Basic Fault Address Reporting
                =================================================================
                Memory around native instruction pointer (0x10638138c):0x10638137c a9 12 40 f9 1f 01 00 f1 24 19 40 fa e0 01 00 54 ..@.....$.@....T
                0x10638138c 09 01 40 79 0a 88 80 52 5f 01 29 6a 61 01 00 54 ..@y...R_.)ja..T
                0x10638139c 00 05 40 f9 6d 79 fb 97 d4 02 40 f9 e0 00 38 36 ..@.my....@...86
                0x1063813ac a8 12 40 f9 01 01 40 f9 e0 03 14 aa 2a 2d 00 94 ..@...@.....*-..
                =================================================================
                Managed Stacktrace:
                =================================================================
                at <unknown> <0xffffffff>
                at System.Object:__icall_wrapper_ves_icall_mono_delegate_ctor <0x00007>
                at iOSSandbox.AppDelegate:FinishedLaunching <0x00233>
                at System.Object:runtime_invoke_dynamic <0x00127>
                at <unknown> <0xffffffff>
                at UIKit.UIApplication:xamarin_UIApplicationMain <0x00007>
                at UIKit.UIApplication:UIApplicationMain <0x0005b>
                at UIKit.UIApplication:Main <0x00107>
                at Program:<Main>$ <0x0003f>
                at System.Object:runtime_invoke_dynamic <0x00127>
                =================================================================
                

                Regression?

                No response

                Known Workarounds

                No response

                Configuration

                .NET SDK:
                Version: 8.0.100-preview.6.23330.14
                Commit: ba97796b8f
                Runtime Environment:
                OS Name: Mac OS X
                OS Version: 13.3
                OS Platform: Darwin
                RID: osx.13-arm64
                Base Path: /usr/local/share/dotnet/sdk/8.0.100-preview.6.23330.14/
                .NET workloads installed:
                [ios]
                Installation Source: SDK 8.0.100-preview.6
                Manifest Version: 16.4.8646-net8-p6/8.0.100-preview.6
                Manifest Path: /usr/local/share/dotnet/sdk-manifests/8.0.100-preview.6/microsoft.net.sdk.ios/WorkloadManifest.json
                Install Type: FileBased
                Host:
                Version: 8.0.0-preview.6.23329.7
                Architecture: arm64
                Commit: 5340be2ccc
                .NET SDKs installed:
                6.0.406 [/usr/local/share/dotnet/sdk]
                7.0.201 [/usr/local/share/dotnet/sdk]
                8.0.100-preview.5.23303.2 [/usr/local/share/dotnet/sdk]
                8.0.100-preview.6.23330.14 [/usr/local/share/dotnet/sdk]
                .NET runtimes installed:
                Microsoft.AspNetCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
                Microsoft.AspNetCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
                Microsoft.AspNetCore.App 8.0.0-preview.5.23302.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
                Microsoft.AspNetCore.App 8.0.0-preview.6.23329.11 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
                Microsoft.NETCore.App 6.0.14 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
                Microsoft.NETCore.App 7.0.3 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
                Microsoft.NETCore.App 8.0.0-preview.5.23280.8 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
                Microsoft.NETCore.App 8.0.0-preview.6.23329.7 [/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
                

                Not sure whether it's specific to my configuration.

                Other information

                No response

                Metadata

                Metadata

                Assignees

                Type

                No type

                Projects

                No projects

                  Milestone

                  Relationships

                  None yet

                  Development

                  No branches or pull requests

                  Issue actions