[Search for users]
[Overall Top Noters]
[List of all Conferences]
[Download this site]
Title: | DEC Pascal Notes |
Notice: | See note 1 for kits. Bug reports to CLT::DEC_PASCAL_BUGS |
Moderator: | TLE::REAGAN |
|
Created: | Sat Jan 25 1986 |
Last Modified: | Tue Jun 03 1997 |
Last Successful Update: | Fri Jun 06 1997 |
Number of topics: | 2675 |
Total number of notes: | 13409 |
2656.0. "DEBUG VAX V7.0 STEP w PASCAL does not work" by CSC32::D_SANFORD () Fri Feb 07 1997 14:18
John,
Just a heads up, this is simular to the previous problem, but I
believe this to be a debugger problem.
We have gotten no updates on our IMPT priority 2 CLD... hope we'll
hear something today.
-drew
<<< TURRIS::DISK$NOTES_PACK:[NOTES$LIBRARY]DEBUG.NOTE;4 >>>
-< DEBUG >-
================================================================================
Note 1835.0 DEBUG VAX V7.0 STEP w PASCAL does not work No replies
CSC32::D_SANFORD 58 lines 7-FEB-1997 13:56
--------------------------------------------------------------------------------
OpenVMS VAX DEBUG Version V7.0-000
OpenVMS VAX V7.0
Simular to problem reported in TURRIS::DEBUG, note 1829.*.
In this case if we initialize a variable and then make a function
call, the debugger will no longer be able to STEP.
If you issue "DBG> SET BREAK %LINE 14" it will break at this
line; otherwise it just runs until the end of the application on
the STEP.
If you feel this is the same as the previous problem please yet
me know; otherwise I'll need to raise another priority 2 CLD as
the workaround is not sufficient.
Regards, Drew Sanford
Customer Support Center
RE: C970121-4247
program test_debug (input,output);
var
line : varying [255] of char;
begin
{ If you remove the next line the debugger will not fail, not sure }
{ what affect 'line := 'testing'' has. But after this assignment }
{ if you execute any function the debugger will just continue as if }
{ you entered DBG> GO }
line := 'testing';
writeln ('Use DBG> STEP');
writeln (substr(line,1,7));
writeln ('You should not see this line without a DBG> STEP');
end.
$ run test
OpenVMS VAX DEBUG Version V7.0-000
%DEBUG-I-INITIAL, Language: PASCAL, Module: TEST_DEBUG
DBG> s
stepped to TEST_DEBUG\%LINE 11
11: line := 'testing';
DBG> s
stepped to TEST_DEBUG\%LINE 12
12: writeln ('Use DBG> STEP');
DBG> s
Use DBG> STEP
stepped to TEST_DEBUG\%LINE 13
13: writeln (substr(line,1,7));
DBG> s
testing
You should not see this line without a DBG> STEP
%DEBUG-I-EXITSTATUS, is '%SYSTEM-S-NORMAL, normal successful completion'
DBG> Exit
T.R | Title | User | Personal Name | Date | Lines |
---|
2656.1 | | TLE::REAGAN | All of this chaos makes perfect sense | Fri Feb 07 1997 14:40 | 17 |
| I had a phone discussion with a debugger developer the other day.
It seems they "improved" how they do STEP by looking forward
in the instruction stream and doing something or other with
breakpoints. The debugger folks didn't know (or remember)
that Pascal uses a
HALT
.BYTE xxx
sequence to signal run-time errors from generated code. This
sequence screwed them up and crashed out the debugger. Now that
they know about it, he said they'd have to "adjust" their code
to deal with situations like this (you can also do such instruction
sequences in MACRO as well).
-John
|