When compiling produces an error:

[Fatal Error] Unit4.pas(10): Internal error: SY576 

and highlights the string

 TForm4=class(TForm) ... 

Delfi reinstalled, still the same. Help me fix it. ((

If the error is in the code, then only here:

 procedure TForm4.Image2Click(Sender: TObject); begin xls:=CreateOLEObject('Excel.Application'); xls.Workbooks.Open('D:\Новая ΠΏΠ°ΠΏΠΊΠ°\АнкСта.xlsx'); xls.Range['A2']:=Edit1.Text; xls.Range['I3']:=Edit2.Text; xls.Range['A6']:=ComboBox1.Text; xls.Range['A8']:=ComboBox2.Text; if RadioButton1.Checked then xls.Range['D3']:='ΠœΡƒΠΆΡΠΊΠΎΠΉ' else xls.Range['D3']:='ЖСнский'; xls.ActiveBook.SaveAs(ExtractFilePath(Application. ExeName) + Edit1.text+'.xlsx'); xls.Visible:= True; end; 
  • @Vika1996; If you are given an exhaustive answer, mark it as correct (click on the check mark next to the selected answer). - Nicolas Chabanovsky ♦

3 answers 3

Try rebuild instead of just compiling. If it fails, go to the folder with your project, delete all dcu files and start the compilation in a new way.

    Exit IDE, log in again. Everything will be alright.

    • I think that when you reinstall Delphi, c IDE came out exactly :) Although anything, of course, happens. - KoVadim
    • one
      @KoVadim, our comments before transformation into responses complemented each other. System error. To fight it is to try everything. Windu overload also comes in there. What led to the error is not described, it means that the general recommendations of technical support work :) - Yura Ivanov
    • what led to the error is written. SY is not from the system, it is from the SYmbol table . And this usually happens if there are dcu, which are poorly compiled or, for example, the number of variable names has reached a critical value. - KoVadim
    • @KoVadim, the system is not from the symbol table, yes. systemic in the sense that Delphi lay down. dcu'ki were cached crookedly, suspended Excel (one hundred times) for ^ F2, etc. anything can be. Experienced people struggle to solve problems, inexperienced to the first failure. - Yura Ivanov

    If you think that there is an error in this part of the code, set breakpoints on each line and you can locate the error (most likely) by a string start. To set a breakpoint, click in the code editor to the left of the line numbering in the code editor. Red dots should appear. Place them in front of all lines of the above code.

    • This is a compilation error, not an execution. Therefore, breakpoints will not help. - KoVadim