[svn] r6346: nemerle/trunk/ncc/generation/HierarchyEmitter.n

malekith svnadmin at nemerle.org
Sun May 28 10:49:44 CEST 2006


Log:
Fix a bug with property signatures in metadata.

Author: malekith
Date: Sun May 28 10:49:43 2006
New Revision: 6346

Modified:
   nemerle/trunk/ncc/generation/HierarchyEmitter.n

Modified: nemerle/trunk/ncc/generation/HierarchyEmitter.n
==============================================================================
--- nemerle/trunk/ncc/generation/HierarchyEmitter.n	(original)
+++ nemerle/trunk/ncc/generation/HierarchyEmitter.n	Sun May 28 10:49:43 2006
@@ -1100,7 +1100,7 @@
 
       def attrs = make_property_attributes (Attributes);
       def ty = GetMemType ().SystemType;
-      mutable parms = null;
+      def parms = parms.MapToArray (_.SystemType);
 
       def (ret_type_req_mods, ret_type_opt_mods) = {
         def getter = GetGetter ();
@@ -1113,16 +1113,15 @@
       }
 
       def (param_type_req_mods, param_type_opt_mods) = {
-        def setter = GetSetter ();
+        def setter = GetSetter () :> MethodBuilder;
 
         if (setter == null)
           (null, null)
         else
         {
-          parms = (setter :> MethodBuilder).fun_header.parms.MapToArray (
-            fun (t : Fun_parm) { t.SystemType });
-          ( (setter :> MethodBuilder).fun_header.GetParamTypeRequiredModifiers (),
-            (setter :> MethodBuilder).fun_header.GetParamTypeOptionalModifiers () )
+          def chop (a) { if (a == null) null else a.ChopLastN (1) }
+          ( chop (setter.fun_header.GetParamTypeRequiredModifiers ()),
+            chop (setter.fun_header.GetParamTypeOptionalModifiers ()) )
         }
       }
 



More information about the svn mailing list