From: Rodrigo Kumpera Date: Fri, 1 Mar 2013 20:40:09 +0000 (-0500) Subject: Erase the type of more fields so we can link away a few more types. X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=commitdiff_plain;h=c8b1c2b3a72f27c26cd39284f4cea97a03a38513;p=mono.git Erase the type of more fields so we can link away a few more types. --- diff --git a/mcs/class/corlib/System/AppDomain.cs b/mcs/class/corlib/System/AppDomain.cs index 9b950b31176..99304d33dbc 100644 --- a/mcs/class/corlib/System/AppDomain.cs +++ b/mcs/class/corlib/System/AppDomain.cs @@ -84,6 +84,7 @@ namespace System { [ThreadStatic] static Dictionary assembly_resolve_in_progress_refonly; +#if !MOBILE // CAS private Evidence _evidence; private PermissionSet _granted; @@ -93,6 +94,17 @@ namespace System { [ThreadStatic] private static IPrincipal _principal; +#else + object _evidence; + object _granted; + + // non-CAS + int _principalPolicy; + + [ThreadStatic] + static object _principal; +#endif + static AppDomain default_domain; @@ -202,14 +214,14 @@ namespace System { } } } - return new Evidence (_evidence); // return a copy + return new Evidence ((Evidence)_evidence); // return a copy } } internal IPrincipal DefaultPrincipal { get { if (_principal == null) { - switch (_principalPolicy) { + switch ((PrincipalPolicy)_principalPolicy) { case PrincipalPolicy.UnauthenticatedPrincipal: _principal = new GenericPrincipal ( new GenericIdentity (String.Empty, String.Empty), null); @@ -219,19 +231,19 @@ namespace System { break; } } - return _principal; + return (IPrincipal)_principal; } } // for AppDomain there is only an allowed (i.e. granted) set // http://msdn.microsoft.com/library/en-us/cpguide/html/cpcondetermininggrantedpermissions.asp internal PermissionSet GrantedPermissionSet { - get { return _granted; } + get { return (PermissionSet)_granted; } } #if NET_4_0 public PermissionSet PermissionSet { - get { return _granted ?? (_granted = new PermissionSet (PermissionState.Unrestricted)); } + get { return (PermissionSet)_granted ?? (PermissionSet)(_granted = new PermissionSet (PermissionState.Unrestricted)); } } #endif @@ -832,7 +844,7 @@ namespace System { if (IsFinalizingForUnload ()) throw new AppDomainUnloadedException (); - PolicyStatement ps = domainPolicy.Resolve (_evidence); + PolicyStatement ps = domainPolicy.Resolve ((Evidence)_evidence); _granted = ps.PermissionSet; } @@ -849,7 +861,11 @@ namespace System { if (IsFinalizingForUnload ()) throw new AppDomainUnloadedException (); +#if MOBILE + _principalPolicy = (int)policy; +#else _principalPolicy = policy; +#endif _principal = null; } @@ -1398,12 +1414,16 @@ namespace System { #endif #pragma warning disable 649 +#if !MOBILE private AppDomainManager _domain_manager; +#else + object _domain_manager; +#endif #pragma warning restore 649 // default is null public AppDomainManager DomainManager { - get { return _domain_manager; } + get { return (AppDomainManager)_domain_manager; } } #if !MOBILE diff --git a/mcs/class/corlib/System/AppDomainSetup.cs b/mcs/class/corlib/System/AppDomainSetup.cs index dd71dd7be84..c515ae1785c 100644 --- a/mcs/class/corlib/System/AppDomainSetup.cs +++ b/mcs/class/corlib/System/AppDomainSetup.cs @@ -65,14 +65,24 @@ namespace System string shadow_copy_files; bool publisher_policy; private bool path_changed; +#if MOBILE + private int loader_optimization; +#else private LoaderOptimization loader_optimization; +#endif bool disallow_binding_redirects; bool disallow_code_downloads; +#if MOBILE + object _activationArguments; + object domain_initializer; + object application_trust; +#else private ActivationArguments _activationArguments; AppDomainInitializer domain_initializer; [NonSerialized] ApplicationTrust application_trust; +#endif string [] domain_initializer_args; bool disallow_appbase_probe; @@ -220,10 +230,14 @@ namespace System [MonoLimitation ("In Mono this is controlled by the --share-code flag")] public LoaderOptimization LoaderOptimization { get { - return loader_optimization; + return (LoaderOptimization)loader_optimization; } set { +#if MOBILE + loader_optimization = (int)value; +#else loader_optimization = value; +#endif } } @@ -286,9 +300,9 @@ namespace System public ActivationArguments ActivationArguments { get { if (_activationArguments != null) - return _activationArguments; + return (ActivationArguments)_activationArguments; DeserializeNonPrimitives (); - return _activationArguments; + return (ActivationArguments)_activationArguments; } set { _activationArguments = value; } } @@ -297,9 +311,9 @@ namespace System public AppDomainInitializer AppDomainInitializer { get { if (domain_initializer != null) - return domain_initializer; + return (AppDomainInitializer)domain_initializer; DeserializeNonPrimitives (); - return domain_initializer; + return (AppDomainInitializer)domain_initializer; } set { domain_initializer = value; } } @@ -314,11 +328,11 @@ namespace System public ApplicationTrust ApplicationTrust { get { if (application_trust != null) - return application_trust; + return (ApplicationTrust)application_trust; DeserializeNonPrimitives (); if (application_trust == null) application_trust = new ApplicationTrust (); - return application_trust; + return (ApplicationTrust)application_trust; } set { application_trust = value; } }