dotnet / runtime

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

Unify type name parser in linker once is in runtime #77868

Closed tlakollo closed 2 months ago

tlakollo commented 1 year ago

Linker used o have two dependencies in the external partition, the cecil submodule (which has been converted in an internal arcade package to avoid having a submodule in runtime) and a small subset of files copied from corert. These set of corert files have since then been ported by nativeAOT, given that NativeAOT lives inside the runtime, we could just reference the most recent files and delete the external copy inside linker partition.

dotnet-issue-labeler[bot] commented 1 year ago

I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label.

MichalStrehovsky commented 1 year ago

Overlaps with #72833. Once this is done, #72833 should be trivial.

jkotas commented 1 year ago

This is shovel-ready.

It should follow the same pattern as https://github.com/dotnet/runtime/pull/83657: Define TypeNameParser partial class under linker that bridges the common TypeNameParser implementation and illinker-specific type system object model.

sbomer commented 2 months ago

This was fixed by https://github.com/dotnet/runtime/pull/103740.