[Mono-bugs] [Bug 74644][Nor] New - Variables are "overwritten" with the contents of others

bugzilla-daemon@bugzilla.ximian.com bugzilla-daemon@bugzilla.ximian.com
Sun, 17 Apr 2005 21:20:05 -0400 (EDT)

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 toshok@ximian.com.


--- shadow/74644	2005-04-17 21:20:05.000000000 -0400
+++ shadow/74644.tmp.5627	2005-04-17 21:20:05.000000000 -0400
@@ -0,0 +1,37 @@
+Bug#: 74644
+Product: Mono: Debugger
+Version: unspecified
+OS Details: 
+Status: NEW   
+Priority: Normal
+Component: backend
+AssignedTo: toshok@ximian.com                            
+ReportedBy: toshok@ximian.com               
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+Summary: Variables are "overwritten" with the contents of others
+the attached test shows it.  if you step from the assignment of xml_test to
+the assignment of string_test and do "show locals", you'll see:
+Process @3 stopped at #0: 0xb768f434 in
+MainClass.Main(System.String[])+0x44 at
+   9            string string_test = "Hello World!";
+(mdb) show locals
+html_test = (System.String) "<xml><prop/> <prop2><subprop/></prop2></xml>"
+xml_test = (System.String) "<xml><prop/> <prop2><subprop/></prop2></xml>"
+string_test = (System.String) <cannot display object>
+Either html_test should retain it's value, or it should be removed from the
+list of locals (if the jit has deemed it no longer in scope.)
+This is probably happening because the debugger assumes that if a variable
+is not in a nested block (i.e. if it's at the toplevel for a method), it is
+live for the entire method.