Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.06;
Скачать: CL | DM;

Вниз

Отладчик в дельфи не останавливается на breakpoints   Найти похожие ветки 

 
Basilio   (2004-05-24 15:57) [0]

В общем, проблема в следующем. Пусть имеется такой код:

unit A;
interface
procedure P1;
const
C: array[1..8192] of record
   a,b:integer;
 end =
( XXXXX );
implementation
procedure P1;
begin
....
end;
end.

XXXXX - инициализация массива C, >8000 строк.
Так вот, в такой ситуации debugger ни в какую не хочет останавливатся на breakpoints внутри процедуры P1.
Если я уменьшаю массив скажем до 7000 - то всё работает (в смысле отладчик останавливается в точках останова).
Я одним местом чувствую, что это как-то связано с тем, что у меня инициализируется константа, размер которой больше 64K (65536 байт).
Проверялось на D5/Win98SE, D5/WinXP, D5/Win2K, D7/WinXP, D7/Win2K
Как-нибудь это ограничение можно снять? отлаживать через writeln что-то не очень хочется..


 
Alex*   (2004-05-24 16:50) [1]

Поставь breakpoints на место вызова процедуры, если не попадет на нее то двизай breakpoints выше до тех пор пока не придешь в место где breakpoints срабатывает, а далее F7


 
Семен Сорокин ©   (2004-05-24 16:56) [2]

Basilio   (24.05.04 15:57)
т.е. не работет условный BreakPoint? Или ты 8000 раз останавливал приложение? :)


 
ega23 ©   (2004-05-24 16:58) [3]

Динамические массивы, вот что нам поможет!


 
Basilio ©   (2004-05-24 19:51) [4]

В другом юните:

uses A;
..
begin
...
>> P1;
...
end;

ставим брейк на P1. останавливается.
внутри P1 вызываем какую-нибудь функцию из другого модуля, (скажем, P2).
ставим брейк внутри P1 на вызов P2,
ставим брейк внутри P2.
запускаем. останавливаемся на вызове P1, ожидаем что по нажатии F7 (Step into) встанем внутри P1. ан нет! становится внутри P2 :(
Как будто кода процедуры P1 он не видит.

Не совсем понятен вопрос от Семена Сорокина

2 ega23:
с динамическими массивами и так всё работает. дело в том, что надо именно так. это генерённый текст (из yacc).

проблему решил пока следующим образом: сбрасываю константные таблицы в отдельный юнит.



Страницы: 1 вся ветка

Текущий архив: 2004.06.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.039 c
1-1085637802
AleKo
2004-05-27 10:03
2004.06.06
изменение данных при построении FastReport


1-1085068202
Larry Laffer
2004-05-20 19:50
2004.06.06
Открыть .res файл


14-1085283375
R
2004-05-23 07:36
2004.06.06
Delphi 5 Standart и компоненты Indy


8-1080179392
Driver
2004-03-25 04:49
2004.06.06
Вращение


6-1082059289
fatman
2004-04-16 00:01
2004.06.06
TServerSocket внутри NT- сервиса