[netcore] System.Private.CoreLib changes to match runtime expectations. (#12504)
commit58cb6aa49c2411ec8d82ea85caf3a8e38fd6ee14
authorAleksey Kliger (λgeek) <akliger@gmail.com>
Fri, 18 Jan 2019 22:33:24 +0000 (18 17:33 -0500)
committerMarek Safar <marek.safar@gmail.com>
Fri, 18 Jan 2019 22:33:24 +0000 (18 23:33 +0100)
tree50c556aa58dca1775cdfa33c693ae219effa4f95
parent6e80adbe4321ffa1d69909e1011c5c385a2fb2f3
[netcore] System.Private.CoreLib changes to match runtime expectations. (#12504)

1. Add classes that the runtime depends on:
   * System.Reflection.RuntimeAssembly and System.Reflection.MonoAssembly
   * System.Mono.MonoDomain and System.Mono.MonoDomainSetup
2. Add fields to some classes so they match what `object-internals.h` expect on the native side.
3. Make a non-`abstract` `System.RuntimeType` stub.
   `System.Type` and `System.RuntimeType` need to have fields that match `object-internals.h` and also the runtime wants to create instances of this type and things go wrong if it's abstract.
16 files changed:
mcs/class/System.Private.CoreLib/Stubs.cs
mcs/class/System.Private.CoreLib/System.Mono/MonoDomain.cs [new file with mode: 0644]
mcs/class/System.Private.CoreLib/System.Mono/MonoDomainSetup.cs [new file with mode: 0644]
mcs/class/System.Private.CoreLib/System.Private.CoreLib.csproj
mcs/class/System.Private.CoreLib/System.Reflection/Assembly.cs
mcs/class/System.Private.CoreLib/System.Reflection/MonoAssembly.cs [new file with mode: 0644]
mcs/class/System.Private.CoreLib/System.Runtime.Remoting.Contexts/Context.cs [new file with mode: 0644]
mcs/class/System.Private.CoreLib/System/RuntimeType.cs [new file with mode: 0644]
mcs/class/System.Private.CoreLib/System/RuntimeTypeHandle.cs
mcs/class/System.Private.CoreLib/System/Type.cs
mcs/class/corlib/ReferenceSources/RuntimeType.cs
mono/metadata/appdomain.c
mono/metadata/class-internals.h
mono/metadata/domain-internals.h
mono/metadata/domain.c
netcore/sample/Makefile