You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
SOS VarargPInvoke test expects a stub signature without the explicit secret argument #6165
SOS.Tests.VarargPInvokeTests.VarargPInvoke_ReportsInteropMethodAndDisassemblesStub fails because its exact expected IL stub signature omits the explicit secret-context parameter.
Windows x64 and arm64, Release, .NET 12 private runtime.
Both SOS and SOS_EnumMemory jobs.
Windows/CDB live debugging; x64 console confirms the same mismatch with both legacy DAC and cDAC.
Regression?
The exact-string assertion was introduced by #6155 on October 26, 2026.
The additional IntPtr is expected runtime behavior: dotnet/runtime#132534 made IL stub secret context an explicit native int modreq(SecretStubArgument) parameter. In src/coreclr/vm/dllimport.cpp, StubNeedsSecretArgument selects vararg forward stubs and AppendSecretStubArgument appends ELEMENT_TYPE_I. These helpers are unchanged by dotnet/runtime#135805.
Other information
Suggested fix: update the expected StubName in VarargPInvokeTests.cs for the applicable runtime versions, preserving the existing stack, method-resolution, and disassembly assertions. Rerun the test to validate the later assertions, which the current failure prevents from executing.
SOS.TestHarness.SosAssertException : SOS assertion failed.
host: cdb
command: clrstack
expected: exactly one row where Function is ILStubClass.IL_STUB_PInvoke(System.String, Int32, Double, ...) (found 0)
This report is based on CI results and source inspection; no local Windows reproduction or proposed fix has been run.
Activity
Fix vararg P/Invoke stub signature expectations (dotnet#6168)