[fpc-devel]a fpc 1.1 make cycle problem

Sergey Korshunoff seyko at comail.ru
Tue Jun 18 02:30:31 CEST 2002


17 Июнь 2002 19:08, Вы написали:

> > I found  that this is because tdictionery.rename do not return a nil
> > (but a rundom value) when it can not find old node.
> > But as I understand, we must always find an old node????
>
> No, not in the case that causes the error I think.

How a dictionery.rename used in other parts of compiler?
It is called only when we shure old node is in dictionery?
Or we do not check a dictionery before renaming?

> > (After patching a tdictionery.rename to return a nil
> > when we do not find a old node, ppc2 start droping a job
> > in another place)
>
> The strange thing is that this crash happens in different places and if
> you try to reproduce it by recompiling the file in which the crash
> occurred, it doesn't happen anymore :( Also, the value of the instruction
> pointer is invalid when the crash occurs: points to the middle of some
> instruction.
> Jonas

The more stange thing is that why this crash always in ppc2....
Why not in ppc1 ?! We can assume fpc generates wrong code only when it is 
compiled with -CR ...

May be there is error in realization part of -CR? Because -Cr do not cause a
problem  and -CR work normally for FPC v1.0, then error  may be in 
n386cal.pas or in i386.inc ...

Regards,
	Sergey Korshunoff






Regards,
	Sergey Korshunoff





More information about the fpc-devel mailing list