nesco писал(а):
Я не стал глубоко лезть в коды, а просто сделал привязку к тому, что былоДык это понятно.
Есть исходные данные на уровне форсмажора, есть понятная цель - и ты ее достигнул с помощью CalcErrPos
Ну ладно.
Давай так.
Пусть ТЕПЕРЯ исходные данные, на уровне того самого форсмажора -- будут другие:
#pas
procedure THIMathParse.SetLine;
begin
Line := Value;
end;
И немного подрихтуем GetToken:
#pas
procedure THIMathParse.GetToken;
begin
Token := ';
TokType := 0;
while Line[LPos] in [,#9,#10,#13] do inc(LPos);
case Line[LPos] of
........
#0: TokType := TokEnd;
end;
end;
Вот, и вопрос к тебе, как к автору CalcErrPos - чего, неужели его нельзя "подпилить" под новые условия, для работы непосредственно с Line (безо всяких safe..)