www.digitalmars.com         C & C++   DMDScript  

c++.idde - DM 8.39 vs SC7.5 Debugger Issue

reply Riccardo Macri <Riccardo_member pathlink.com> writes:
Hi! I've been using the SC7.5 debugger for many years and its been good to me.
After switching to DM a short while back (8.38, also tried 8.39) I've had
crashses in the debugger. I thought my findings might be of interest and could
provide clues to other problems people are having with the debugger.

While tracing down a pointer bug in some Win32 code, I consistently was getting
IDDE crashes; upon an exception in my code, the debugger opens the source code
window and the function call stack appears OK but when I try click down the
stack, instead of opening the relevant module, the IDDE crashes with an
exception.

I tried exactly the same configuration under SC 7.5 and discovered the following
pattern (by alternating between the 2 environments, they are installed in
separate directories):

Build EXE under DM then use DM IDDE to debug - IDDE crash
Build under SC then use SC IDDE to debug - debugger works fine
Build under DM then use SC IDDE to debug - IDDE crash
Build under SC then use DM IDDE debug    - debugger works fine

So it seems something in the code the DM compiler/linker generates doesn't agree
with the IDDE debugger. Is there some extra option I need to enable to make the
DM compiler generate debug code the IDDE will be happy with?

I suspect some change in the debugging structures causes the debugger to corrupt
itself. Its happening with a multi-megabyte project (7MB debug EXE) so its not
possible to post any small sample code.

It happens both under XP and Win2K.

I'll provide more details if it will be useful to anyone in fixing this.

regards,
Riccardo

Riccardo Macri
Developer of Planimate(TM)
Feb 17 2004
next sibling parent Scott Michel <scottm cs.ucla.edu> writes:
Walter is pretty responsive to bug reports, esp. critical ones like this.
But he needs a working code snippet, as small as possible, that
demonstrates the bug.

What you need to do is provide a small (yes, SMALL!) program... :-)


-scooter

Riccardo Macri wrote:

 Hi! I've been using the SC7.5 debugger for many years and its been good to
 me. After switching to DM a short while back (8.38, also tried 8.39) I've
 had crashses in the debugger. I thought my findings might be of interest
 and could provide clues to other problems people are having with the
 debugger.
 
 While tracing down a pointer bug in some Win32 code, I consistently was
 getting IDDE crashes; upon an exception in my code, the debugger opens the
 source code window and the function call stack appears OK but when I try
 click down the stack, instead of opening the relevant module, the IDDE
 crashes with an exception.
 
 I tried exactly the same configuration under SC 7.5 and discovered the
 following pattern (by alternating between the 2 environments, they are
 installed in separate directories):
 
 Build EXE under DM then use DM IDDE to debug - IDDE crash
 Build under SC then use SC IDDE to debug - debugger works fine
 Build under DM then use SC IDDE to debug - IDDE crash
 Build under SC then use DM IDDE debug    - debugger works fine
 
 So it seems something in the code the DM compiler/linker generates doesn't
 agree with the IDDE debugger. Is there some extra option I need to enable
 to make the DM compiler generate debug code the IDDE will be happy with?
 
 I suspect some change in the debugging structures causes the debugger to
 corrupt itself. Its happening with a multi-megabyte project (7MB debug
 EXE) so its not possible to post any small sample code.
 
 It happens both under XP and Win2K.
 
 I'll provide more details if it will be useful to anyone in fixing this.
 
 regards,
 Riccardo
 
 Riccardo Macri
 Developer of Planimate(TM)
Feb 17 2004
prev sibling parent "Walter" <walter digitalmars.com> writes:
One thing you can do is try to mix and match .obj files from the sc build vs
the dmc build. This can quickly reduce down to which .obj file is the
culprit.

"Riccardo Macri" <Riccardo_member pathlink.com> wrote in message
news:c0thsv$14et$1 digitaldaemon.com...
 Hi! I've been using the SC7.5 debugger for many years and its been good to
me.
 After switching to DM a short while back (8.38, also tried 8.39) I've had
 crashses in the debugger. I thought my findings might be of interest and
could
 provide clues to other problems people are having with the debugger.

 While tracing down a pointer bug in some Win32 code, I consistently was
getting
 IDDE crashes; upon an exception in my code, the debugger opens the source
code
 window and the function call stack appears OK but when I try click down
the
 stack, instead of opening the relevant module, the IDDE crashes with an
 exception.

 I tried exactly the same configuration under SC 7.5 and discovered the
following
 pattern (by alternating between the 2 environments, they are installed in
 separate directories):

 Build EXE under DM then use DM IDDE to debug - IDDE crash
 Build under SC then use SC IDDE to debug - debugger works fine
 Build under DM then use SC IDDE to debug - IDDE crash
 Build under SC then use DM IDDE debug    - debugger works fine

 So it seems something in the code the DM compiler/linker generates doesn't
agree
 with the IDDE debugger. Is there some extra option I need to enable to
make the
 DM compiler generate debug code the IDDE will be happy with?

 I suspect some change in the debugging structures causes the debugger to
corrupt
 itself. Its happening with a multi-megabyte project (7MB debug EXE) so its
not
 possible to post any small sample code.

 It happens both under XP and Win2K.

 I'll provide more details if it will be useful to anyone in fixing this.

 regards,
 Riccardo

 Riccardo Macri
 Developer of Planimate(TM)
Feb 19 2004