Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by [EMAIL PROTECTED]

http://bugzilla.ximian.com/show_bug.cgi?id=76784

--- shadow/76784        2007-02-28 09:37:27.000000000 -0500
+++ shadow/76784.tmp.18580      2007-02-28 09:47:23.000000000 -0500
@@ -10,13 +10,12 @@
 Component: JScript
 AssignedTo: [EMAIL PROTECTED]                            
 ReportedBy: [EMAIL PROTECTED]               
 QAContact: [EMAIL PROTECTED]
 TargetMilestone: ---
 URL: 
-Cc: 
 Summary: mjs miscompile switch statement which contains an assigment as 
expression.
 
 Description of Problem:
 
 mjs does not handle properly assignment expression inside a switch
 statement expression. 
@@ -60,6 +59,27 @@
 This bug breaks js1_2/statements/switch2.js
 
 ------- Additional Comments From [EMAIL PROTECTED]  2007-02-28 09:37 -------
 Created an attachment (id=18794)
 Proposed patch
 
+
+------- Additional Comments From [EMAIL PROTECTED]  2007-02-28 09:47 -------
+I have attached a proposed patch which fixes this issue and generally
+improves the handling of "expression statements".
+
+The primary fix was to Expression.Emit to correctly leave a value on
+the stack or not according to the "no_effect" field, including when
+the final AST in the list is an assignment (making use of
+CodeGenerator.EmitAssignAndReturnBuilder).
+
+Several other classes needed to be fixed to pass the correct
+"no_effect" value to child expressions.
+
+This fixes the IL for several of the 'Mozilla' test cases, and the
+patch modifies the test lists accordingly. I have run a full
+regression to verify that the patch doesn't break anything.
+
+Note: js1_2/statements/switch2.js still fails, but later on in the IL.
+
+
+
_______________________________________________
mono-bugs maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-bugs

Reply via email to