for I := 0 to tf1k8work2.count-1 do
begin
s1:=get_stolb(tf1k8work2.Strings[i],4); //поиск в описании
s1:=normalstr(s1);
kolvo_vkus1:=0;
rrr:=vkus.Count;
rrr:=rrr-1;
ttt:=0;
//while eee=1 do
for ttt := 0 to rrr do
begin
if j<135 then
begin
//ttt:=ttt+1;
sss1:=vkus.Strings[ttt];
if sss1='' then sss1:='--------';
s2:=copy(sss1,0,4);
ggg:=' '+s2;
if pos(ggg,s1)>0 then
begin
//log('!!! ищем вкусы шаг 1 2222');
bigstat1:='вкус найден';
vkusstat:= vkus.Strings[j];
kolvo_vkus1:=kolvo_vkus1+1;
eee:=eee-1;
//log('777'+bigstat1);
//log(inttostr(pos(s2,s1)));
//log('!!!!найден вкус: ' + vkus.Strings[j]+ ' в строке ' + tf1k8work2.Strings[i]) ;
end;
end;
end;
end;
этот код отличается от приведённого на картинке. Если ошибка в изменённом коде сохраняется - попробуй пересобрать проект. Не знаю как на новых. но на старых Делфях мне приходилось несколько раз сталкиваться с такими странными работами итераторов цикла, вероятно, дело именно в работе оптимизатора при компиляции. Больше всего похоже на то, что действительно дальше по телу цикла в коде были изменения либо rrr, либо j .