Author: cesar
Date: 2005-04-15 13:47:15 -0400 (Fri, 15 Apr 2005)
New Revision: 43067

Modified:
   trunk/mcs/class/Microsoft.JScript/Microsoft.JScript/ChangeLog
   trunk/mcs/class/Microsoft.JScript/Microsoft.JScript/Statement.cs
   trunk/mcs/class/Microsoft.JScript/Microsoft.JScript/expression.cs
Log:
2005-04-15  Cesar Lopez Nataren  <[EMAIL PROTECTED]>

        * Statement.cs: make internal the builders.
        * expression.cs: (Identifier.Emit) Take into account if its
        binding is of type Catch.

Modified: trunk/mcs/class/Microsoft.JScript/Microsoft.JScript/ChangeLog
===================================================================
--- trunk/mcs/class/Microsoft.JScript/Microsoft.JScript/ChangeLog       
2005-04-15 16:16:54 UTC (rev 43066)
+++ trunk/mcs/class/Microsoft.JScript/Microsoft.JScript/ChangeLog       
2005-04-15 17:47:15 UTC (rev 43067)
@@ -1,3 +1,9 @@
+2005-04-15  Cesar Lopez Nataren  <[EMAIL PROTECTED]>
+
+       * Statement.cs: make internal the builders.
+       * expression.cs: (Identifier.Emit) Take into account if its
+       binding is of type Catch.
+
 2005-04-14  Cesar Lopez Nataren  <[EMAIL PROTECTED]>
 
        * SemanticAnalizer.cs: Added a Hashtable that indicates which

Modified: trunk/mcs/class/Microsoft.JScript/Microsoft.JScript/Statement.cs
===================================================================
--- trunk/mcs/class/Microsoft.JScript/Microsoft.JScript/Statement.cs    
2005-04-15 16:16:54 UTC (rev 43066)
+++ trunk/mcs/class/Microsoft.JScript/Microsoft.JScript/Statement.cs    
2005-04-15 17:47:15 UTC (rev 43067)
@@ -581,8 +581,8 @@
                internal AST catch_cond;
                internal AST stms;
 
-               FieldBuilder field_info;
-               LocalBuilder local_builder;
+               internal FieldBuilder field_info;
+               internal LocalBuilder local_builder;
 
                internal Catch (string id, AST catch_cond, AST stms, AST 
parent, int line_number)
                {

Modified: trunk/mcs/class/Microsoft.JScript/Microsoft.JScript/expression.cs
===================================================================
--- trunk/mcs/class/Microsoft.JScript/Microsoft.JScript/expression.cs   
2005-04-15 16:16:54 UTC (rev 43066)
+++ trunk/mcs/class/Microsoft.JScript/Microsoft.JScript/expression.cs   
2005-04-15 17:47:15 UTC (rev 43067)
@@ -5,7 +5,7 @@
 //     Cesar Lopez Nataren ([EMAIL PROTECTED])
 //
 // (C) 2003, 2004 Cesar Lopez Nataren
-// (C) 2005, Novell Inc.
+// (C) 2005, Novell Inc. (http://novell.com)
 //
 
 //
@@ -264,7 +264,7 @@
 
                        ig.Emit (OpCodes.Ldloc, local);
                        ig.Emit (OpCodes.Dup);
-                       
+
                        left.Emit (ec);
 
                        CodeGenerator.load_engine (InFunction, ec.ig);
@@ -1043,7 +1043,7 @@
                                        ig.Emit (OpCodes.Starg, (short) f.pos);
                                else
                                        ig.Emit (OpCodes.Ldarg_S, f.pos);
-                       } else if (binding is VariableDeclaration || binding is 
Try) {
+                       } else if (binding is VariableDeclaration || binding is 
Try || binding is Catch) {
                                FieldInfo field_info = extract_field_info 
(binding);
                                LocalBuilder local_builder = 
extract_local_builder (binding);
                                
@@ -1064,6 +1064,9 @@
                                load_script_func (ec, (FunctionDeclaration) 
binding);
                        else if (binding == null) // it got referenced before 
was declared and initialized
                                Console.WriteLine ("id = {0}, Identifier.Emit, 
binding == null? {1}", name.Value, binding == null);
+                       else
+                               Console.WriteLine ("Identifier.Emit, 
binding.GetType = {0}", binding.GetType ());
+
                        if (!assign && no_effect)
                                ig.Emit (OpCodes.Pop);                          
                }
@@ -1130,6 +1133,8 @@
                                r = ((VariableDeclaration) a).field_info;
                        else if (a is Try)
                                r = ((Try) a).field_info;
+                       else if (a is Catch)
+                               r = ((Catch) a).field_info;
                        return r;
                }
                
@@ -1140,6 +1145,8 @@
                                r = ((VariableDeclaration) a).local_builder;
                        else if (a is Try)
                                r = ((Try) a).local_builder;
+                       else if (a is Catch)
+                               r = ((Catch) a).local_builder;
                        return r;
                }
        }

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to