[Mono-bugs] [Bug 80191][Wis] New - ironpython tracebacks on Mono don't have line numbers.

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Sat Dec 9 02:51:30 EST 2006

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 anthony at interlink.com.au.


--- shadow/80191	2006-12-09 02:51:30.000000000 -0500
+++ shadow/80191.tmp.1010	2006-12-09 02:51:30.000000000 -0500
@@ -0,0 +1,54 @@
+Bug#: 80191
+Product: Mono: Runtime
+Version: 1.2
+OS Details: 
+Status: NEW   
+Priority: Wishlist
+Component: debug
+AssignedTo: martin at ximian.com                            
+ReportedBy: anthony at interlink.com.au               
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+Summary: ironpython tracebacks on Mono don't have line numbers.
+With Ironpython running under either 1.1.17 or 1.2.2, tracebacks don't get
+line numbers. This is not the case when running under .Net. I've attached a
+very simple script that demonstrates this. When run, we see:
+Traceback (most recent call last):
+  File tracebacktest, line unknown, in Initialize
+  File tracebacktest, line unknown, in foo1
+  File tracebacktest, line unknown, in foo2
+  File tracebacktest, line unknown, in foo3
+ZeroDivisionError: Division by zero
+This problem makes working with IronPython on Mono seriously painful, as
+debugging becomes a real trial and error process.
+I asked on the ironpython list:
+Any ideas on where I should look to try to fix this? It makes
+debugging on Mono almost impossible...
+Dino replied:
+From the IronPython side you can look at Ops.UpdateTraceBack.  This is
+called during fault blocks (catch & rethrow blocks in dynamic methods) to
+store line number information when we have code that PDBs (or whatever Mono
+uses here) don't provide the necessary debugging information.  If this
+isn't getting hit you might want to check Options.traceBackSupport and make
+sure it's true.  Hopefully that'll lead you to somewhere useful to look on
+the Mono side.
+I replied again:
+>>> IronPython.Compiler.Options.TraceBackSupport
+Looking a bit further - the third result of sys.exc_info() (the
+traceback) is always None. Is this the case on .Net as well? I'm not
+sure that this is relevant, because the inbuilt traceback code is
+dumping out a working traceback (well, aside from the line numbers), I
+suspect this is a different problem.

More information about the mono-bugs mailing list