Erase the type of more fields so we can link away a few more types.
authorRodrigo Kumpera <kumpera@gmail.com>
Fri, 1 Mar 2013 20:40:09 +0000 (15:40 -0500)
committerRodrigo Kumpera <kumpera@gmail.com>
Fri, 1 Mar 2013 23:58:35 +0000 (18:58 -0500)
mcs/class/corlib/System/AppDomain.cs
mcs/class/corlib/System/AppDomainSetup.cs

index 9b950b31176a1d0120905998e382c5a5267158a7..99304d33dbc9e6b9cb983dfbff795f5d69bffcc9 100644 (file)
@@ -84,6 +84,7 @@ namespace System {
 
                [ThreadStatic]
                static Dictionary<string, object> 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
index dd71dd7be84cd14232024f4a28b2527fa9a68253..c515ae1785cf0869f85dcfafcbd901db48c8a6d3 100644 (file)
@@ -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; }
                }