Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.019 c
1-1085291576
Cucumber
2004-05-23 09:52
2004.06.06
Как измерить маленький отрезок времени?


3-1084739742
ЯЯЯ
2004-05-17 00:35
2004.06.06
как удалить пустую строку из dbgrid a ?(ado)


1-1085402602
WebErr
2004-05-24 16:43
2004.06.06
Разборка с формулами


3-1084723034
Oxer
2004-05-16 19:57
2004.06.06
Связи м/у таблмцами ("ручное" изменение значения ключа)


8-1080579787
Дмитрий
2004-03-29 21:03
2004.06.06
Исходники для MMTools




   Наверх