[runtime] Initialize MethodBody objects by calling a ctor instead of accessing the...
commit3241199830b77db6cc0b007db3a52e4549a8b333
authorZoltan Varga <vargaz@gmail.com>
Tue, 20 Nov 2018 08:09:51 +0000 (20 03:09 -0500)
committerGitHub <noreply@github.com>
Tue, 20 Nov 2018 08:09:51 +0000 (20 03:09 -0500)
treee0735a186f3a634c81e201e8f6f43e8f91d94aa3
parentc7a71ca4bd4a744b98dc7c1eb7e1d86360817edb
[runtime] Initialize MethodBody objects by calling a ctor instead of accessing the object directly. This allows the MethodBody type to be removed by the linker. (#11730)

* [runtime] Initialize MethodBody objects by calling a ctor instead of accessing the object directly. This allows the MethodBody type to be removed by the linker.

* [bcl] Preserve CustomAttributeData and related types using PreserveDependency attributes on the GetCustomAttributesDataInternal () icall.

* Fix a test.

* Fix C++ build failures.

* Bump API snapshot submodule
12 files changed:
configure.ac
external/api-snapshot
mcs/class/corlib/LinkerDescriptor/mscorlib.xml
mcs/class/corlib/ReferenceSources/MethodBase.cs
mcs/class/corlib/System.Reflection/CustomAttributeData.cs
mcs/class/corlib/System.Reflection/MethodBody.cs
mcs/class/corlib/System/MonoCustomAttrs.cs
mcs/tools/linker/Makefile
mcs/tools/linker/Tests/mscorlib/test-reflection-03.cs [new file with mode: 0644]
mcs/tools/linker/Tests/mscorlib/test-reflection-04.cs [new file with mode: 0644]
mono/metadata/object-internals.h
mono/metadata/reflection.c