Skip to content

NativeAOT constrained call bug #98581

@mrvoorhe

Description

@mrvoorhe

Description

I was experimenting with running our IL2CPP test suite to compare against nativeaot and ran into a bug in our constrained call tests. I believe our constrained call tests were ported from the .NET Core constrained call tests so this was a bit surprising to hit.

Reproduction Steps

ConsoleApp44.zip

  1. Unzip the attached file
  2. Run dotnet publish
  3. Run .\ConsoleApp44\bin\Release\net8.0\win-x64\publish\ConsoleApp44.exe

Expected behavior

You can run dotnet run ConsoleApp44.csproj to see the expected behavior.

C:\UnitySrc\dev\TestGround\ConsoleApp44\ConsoleApp44> dotnet run                                           
ConstrainedCall1Test1 = 6
ConstrainedCall1Test2 = 9

Actual behavior

 C:\UnitySrc\dev\TestGround\ConsoleApp44> .\ConsoleApp44\bin\Release\net8.0\win-x64\publish\ConsoleApp44.exe
ConstrainedCall1Test1 = 4
ConstrainedCall1Test2 = 6

Regression?

Not a regression, both the net7 and net8 nativeaot builds had the problem.

.NET Core works correctly.

Known Workarounds

No response

Configuration

8.0.101 Windows x64

Other information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-NativeAOT-coreclrin-prThere is an active PR which will close this issue when it is merged

    Type

    No type

    Projects

    Status

    No status

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions