Skip to content

ilasm/ildasm does not roundtrip System.Runtime reference assembly #122933

@jkotas

Description

@jkotas

Repro

Using .NET 10 ilasm + ildasm and .NET 10.0.0 System.Runtime.dll reference assembly:

ildasm System.Runtime.dll" /out:system.Runtime.il
ilasm system.Runtime.il /out:System.Runtime2.dll /DLL
ildasm System.Runtime2.dll" /out:system.Runtime2.il

Actual Result

System.Runtime.il has correct IEqualityOperators definition:

.class interface public abstract auto ansi beforefieldinit System.Numerics.IEqualityOperators`3<(class System.Numerics.IEqualityOperators`3<!TSelf,!TOther,!TResult>) TSelf,TOther,TResult>

System.Runtime2.il has the constraints duplicated in IEqualityOperators definition:

.class interface public abstract auto ansi beforefieldinit System.Numerics.IEqualityOperators`3<(class System.Numerics.IEqualityOperators`3<!TSelf,!TOther,!TResult>, class System.Numerics.IEqualityOperators`3<!TSelf,!TOther,!TResult>) TSelf,TOther,TResult>

Expected result

IEqualityOperators definition of System.Runtime2.il is identical to the one from System.Runtime.dll

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions