[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 377
  • Last Modified:

Internal compiler error

When I do a "build all" of my Delphi3.02 project, it compiles all units, except 2, and gives a fatal error "Internal Error L1086". This occurs with both IDE and command line compiling.
I cannot trace what I changed in the code since last succesful "build all".
Deleting all .dcu files, and doing a build all (which doesn't generate the .exe, due to this error above) followed by a normal "compile" generates the .exe and it seems to be OK, but, for example, the version isn't auto-incremented, etc.

Does anybody have any experiences with internal compiler errors, does there exist explanations ?
0
bome
Asked:
bome
  • 2
1 Solution
 
BlackManCommented:
This error seems to come every time a lot of units has been compiled. It's a linker error. Just do a Compile after the error and everything is Ok.
This error is gone in D4, now it's L 511 :-) (And I'm not kidding!)
0
 
EmmDiehCommented:
At:
http://www.inprise.com/devsupport/delphi/fixes/delphi4/compiler.html
this error has been described to occur because of lines like
  TInternalError = type TObject;
it is a compiler error that fixed or known.
If you don't update to D4 trace the error to the unit by commeting out part by part.
0
 
bomeAuthor Commented:
Thank you for your answer. It wasn't really the "solution" for my problem, but I must admit that my actual question (last sentence)  doesn't cover my problem... So you did answer my question...

Nonetheless, your answer assured me that it was not my fault and I began to search: I moved all .pas files to another directory and one after another, copied them back, each time doing a build all.  Like that I found the unit which caused this compiler error.

In the end it was the third string in a "resourcestring" section:
----Before: (doesn't work)---
resourcestring
S_WantOverwrite= '%s already exists.'+#13#10
                +'Do you want to overwrite it ?';
S_WantSkip='Do want to skip all following existing files ?';
NoAssignmentName='(no assignment)';

----After: (does for build all)---
resourcestring
S_WantOverwrite=...
S_WantSkip=...
const
NoAssignmentName='(no assignment)';

I don't have the time to explore this, and at the moment it doesn't matter whether it's resourcestring or not.

bome
0
 
EmmDiehCommented:
Hmmm. I hope you reported your findings to Inprise,
so that at least the work was of some use.
I once was lucky(?) to report a previously unknown
small "issue" to interbase and yes I got a mail back
asking for a test case.
0

Featured Post

Learn to develop an Android App

Want to increase your earning potential in 2018? Pad your resume with app building experience. Learn how with this hands-on course.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now