Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Delphi: F2084 Internal Error T2575

Tags:

delphi

Do anybody know what this error means?

It comes and goes in one of my units. Adding a space or a lineshift will sometime solve it, sometime not...

I'm using Delphi 2007.

like image 954
Vegar Avatar asked Apr 30 '09 11:04

Vegar


4 Answers

Here is a Delphi internal error guide that will perhaps help you. Internal error often can be resolved by deleting DCU files, restarting the IDE or not using a tool that speeds up Delphi start (like DelphiSpeedUp).

But in most cases, this is some weird bug in the Delphi compiler and if you know to work around it and this won't be to costy, do this and be happy. I once had the console version dcc32 crashing (IDE compiled fine) when I increased a variable with Inc and using addition instead of Inc solved the problem...

like image 173
schnaader Avatar answered Sep 19 '22 09:09

schnaader


Best thing to do is report this to CodeGear. It really helps if you can find a way to consistently cause the bug on purpose, so they can track it down more easily.

like image 30
Mason Wheeler Avatar answered Sep 20 '22 09:09

Mason Wheeler


One simple way to get an internal error is to use cut&paste to create a new routine. I moved all code within an IF block to a new procedure and got internal error T2335 at the End of the new proc (in Delphi 7).

The error was caused by the line "If (Something) then Break;". The problem was, this code was no longer within a loop, so there was nothing to break from. Changing 'Break' to 'Exit' fixed the problem.

So look for Break and Continue statements.

like image 4
Guy Gordon Avatar answered Sep 20 '22 09:09

Guy Gordon


All internal errors are things that shouldn't have happened, but did. Check QC and if it isn't there report it. If you can provide a way to reproduce it that will make it more likely they can fix it.

Usually for internal erros I do a full build or restart Delphi.

like image 2
Jim McKeeth Avatar answered Sep 19 '22 09:09

Jim McKeeth