xamarin-macios/tools/linker
Sebastien Pouliot a94e4dc423 Revert c633bd378f and fix #51805 with a new Cecil API (#1640)
* Revert "[mtouch][linker] Remove type forwarders. Fixes #51805 (#1589) (#1600)"

This reverts commit c633bd378f.

* [mono] Bump mono to get latest cecil (cycle9) and fix linker's ExternalType.Scope. Fixes #52187 and #51805

Original fix for bug #51805 was reverted since it caused a regression [2]
when type forwarders are used thru reflection, which happens when
serializing some types.

[1] https://bugzilla.xamarin.com/show_bug.cgi?id=51805
[2] https://bugzilla.xamarin.com/show_bug.cgi?id=52187
2017-02-03 16:12:28 -05:00
..
Descriptors [linker] Update mscorlib.xml to preserve generic collection interfaces. Fixes #50290 (#1384) (#1427) 2017-01-03 13:03:29 -05:00
MonoTouch.Tuner Revert c633bd378f and fix #51805 with a new Cecil API (#1640) 2017-02-03 16:12:28 -05:00
ApplyPreserveAttribute.cs Build mmp. 2016-04-24 14:47:26 -04:00
BaseProfile.cs Build mmp. 2016-04-24 14:47:26 -04:00
ChangeLog Build mmp. 2016-04-24 14:47:26 -04:00
CoreHttpMessageHandler.cs [linker] Update BaseSubStep subclasses to use ExceptionalSubStep (#1507) 2017-01-16 11:42:41 -05:00
CoreMarkStep.cs [mtouch/mmp] Fix build after breaking cecil update in mono. 2016-09-01 18:28:35 +02:00
CoreOptimizeGeneratedCode.cs [mtouch][linker] Use correct error code for CoreOptimizeGeneratedCode (#915) 2016-09-28 23:16:03 -04:00
CorePreserveCode.cs Build mmp. 2016-04-24 14:47:26 -04:00
CoreRemoveAttributes.cs Build mmp. 2016-04-24 14:47:26 -04:00
CoreRemoveSecurity.cs Build mmp. 2016-04-24 14:47:26 -04:00
ExceptionalSubStep.cs [mtouch][linker] Provide a more specific error code when OptimizeGeneratedCodeSubStep fails (#903) 2016-09-28 11:46:14 -04:00
MarkNSObjects.cs [linker] Update BaseSubStep subclasses to use ExceptionalSubStep (#1507) 2017-01-16 11:42:41 -05:00
MobileExtensions.cs Build mmp. 2016-04-24 14:47:26 -04:00
MobileMarkStep.cs [mtouch/mmp] Share code between link contexts. 2017-01-18 10:48:11 +01:00
MobileProfile.cs Update list of Facade assemblies. (#916) 2016-09-29 16:12:31 +02:00
MobileRemoveAttributes.cs Build mmp. 2016-04-24 14:47:26 -04:00
MobileResolveMainAssemblyStep.cs [linker] Fix debugging of watchOS apps when link all is used. Fixes #40641 (#3) 2016-04-26 19:01:49 -04:00
MobileSweepStep.cs Build mmp. 2016-04-24 14:47:26 -04:00
ObjCExtensions.cs Fix EveryFrameworkSmokeTests test with MediaPlayerLibrary (#1418) 2016-12-28 08:46:46 -06:00
README.linker Build mmp. 2016-04-24 14:47:26 -04:00
RemoveSelectors.cs Build mmp. 2016-04-24 14:47:26 -04:00
RemoveUserResourcesSubStep.cs [mtouch][mmp] Unify user resources removal as a link step (#1026) 2016-11-01 13:11:25 -04:00

README.linker

README.linker

Q: Why some stuff is not linked out ?

A: In most case this is because:
	a) the BCL uses it internally
	b) the mono runtime depends on the type, methods, class layout


= mscorlib.dll =

System.Security.PermissionSet
	* Assembly has (3) fields of that type
	* mscorlib.xml preserve all fields from Assembly (object-internals.h)
	* code is "stubified" by the linker
System.Security.Policy.ApplicationTrust: 
	* Used as a field in AppDomainSetup;
	* Field also exists in unmanaged code (domain-internals.h);
	* mscorlib.xml preserve all fields from AppDomainSetup
	* only the default .ctor remains and is stubified by the linker
System.Security.Policy.Evidence
	* Used by AppDomain.Load[Assembly]
	* Used by Assembly.LoadWithPartialName overloads
	* code is "stubified" by the linker


= System.dll =

System.Text.RegularExpressions.*
	* Included because there is 2 regex in UriParser