On Mon, 9 Apr 2007, Stefano Zacchiroli wrote:
On Mon, Apr 09, 2007 at 09:25:34PM +1000, skaller wrote:
Is it still possible to use the debugger and get a backtrace etc
if there are no debugging symbols in these libraries?

Of course not, but this is not the point. Indeed, the same argument can
be made for C libraries, but for C libraries the default is not to ship
debugging symbols, why OCaml should make a difference from this point of
view? That's the question we should find an answer for (or alternatively
remove the debugging symbols from all OCaml libraries...).

You can still get a partial backtrace, like in C, but it's a bit less useful than in C. One reason is tha lack of disasm. A bigger problem is polymorphism. Without debugging symbols in *every* function in the backtrace, it's not generally possible to infer the type of a polymorphic variable, so ocamldebug can't print it.

So the big difference in my mind is that for C you usually don't need debugging symbols for the libraries unless you are debugging the libraries themselves. In Ocaml you need debugging symbols for the library if you are debugging any function that is being called by the library, and, due to the increased use of higher order functions, that happens a lot.

Ivan


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to