So it took me a while to switch to C backend because the debugger seems to quit unexpectedly most of the time when the program crashes. For instance:
Code: Select all
DeclareModule bar
Declare ShowFoo()
EndDeclareModule
Module bar
Global NewList *foo()
Procedure ShowFoo()
FirstElement(*foo())
Debug *foo()
EndProcedure
EndModule
OpenWindow(0, 0, 0, 1920, 1080, "", #PB_Window_BorderLess)
Repeat
bar::ShowFoo()
Until WaitWindowEvent() = #PB_Event_CloseWindow
This crashes in a correct way, ie. line 11 is highlighted and the compiler tells me that the list doesn't have a current element. Fine. However, I have basically the same code architecture in my game (of course a lot more complex), and every time, the debugger quits unexpectedly and doesn't catch the error (same error as in this example – and it does catch the error with ASM backend).
I'd like to know if other people experience the same thing? I've tried with / without optimised code, it doesn't change anything.