Hlásenie 

[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'

všetci, čo programujeme v Delphi, dobre poznáme.

Prekladač pri syntaktickej a sémantickej analýze objavil v zápise programu chyby a program preto nemohol preložiť. Čo teraz?

V okne so správami hrozivému [Fatal Error] predchádza zoznam chybových hlásení:


error

 

Hlásenia zo skupiny [Errors] sú chyby, ktoré sú príčinou toho, že náš zdrojový kód nemožno považovať za platný program napísaný v jazyku Object Pascal. Tieto chyby musíme odstrániť.

Hlásenia zo skupiny [Warnings] sú varovania, hlásenia zo skupiny [Hints] možno nazvať dobrými radami, upozorneniami. Tieto hlásenia majú informačný charakter, programátora upozorňujú na podozrivé miesta či situácie, úspešnosť prekladu ale neovplyvňujú. Programátor im môže venovať pozornosť, ale nemusí.

Po kliknutí na riadok so správou o chybe sa automaticky dostaneme na to miesto v zdrojovom kóde, kde prekladač chybu objavil. Dôvod chybového hlásenia nemusí byť vo zvýraznenom riadku, niekedy je problém o riadok vyššie, inokedy aj o niekoľko riadkov alebo stránok vyššie. Niektorá chyba môže spôsobiť sled ďalších chybových hlásení, preto je dôležité opravovať chyby v tom poradí v akom boli objavené.
Podrobný popis významu jednotlivých hlásení nájdeme v dokumentácii priamo v prostredí Delphi, stačí označiť chybové hlásenie a stlačiť F1.

Niektoré hlásenia, s ktorými sa stretávame veľmi často a mali by sme ich poznať:

Undeclared identifier: '<element>'                
Nedeklarovaný identifikátor:  '<element>'

File not found: '<element>'                           
Súbor sa nenašiel:  '<element>'

Identifier redeclared: '<element>'     
Identifikátor viackrát deklarovaný'<element>'

<element> expected but <element> found   
<element> očakávaný  ale  <element> nájdený

; expected but . found   
. expected but ; found
= expected but : found
END expected but  PROCEDURE  found
                       

Missing operator or semicolon                      
Chýba operátor alebo bodkočiarka                   

Missing parameter type                                 
Chýba typ parametra                

Unterminated string                                      
Neukončený reťazec    

Ordinal type required                                    
Vyžaduje sa ordinálny typ         

File type not allowed here                            
Tu nie je dovolené použiť typ súbor       

'<element>' is not a type identifier                
'<element>' nie je identifikátor typu

Incompatible types: '<element>' and '<element>'    
Nekompatibilné typy: '<element>' and '<element>'

Incompatible types
Nekompatibilné typy 

';' not allowed before 'ELSE'
Pred 'ELSE' nemôže byť bodkočiarka

Low bound exceeds high bound
Dolná hranica prekračuje hornú hranicu

Type of expression must be BOOLEAN
Výraz musí byť typu BOOLEAN

Type of expression must be INTEGER           
Výraz musí byť typu INTEGER

Operator not applicable to this operand type
Operátor nemožno použiť na operand tohto typu

Function needs result type
V deklarácii funkcie musíme uviesť typ výsledku.

Invalid function result type
Neplatný typ výsledku funkcie.

For loop control variable must have ordinal type       
Riadiaca premenná  cyklu  for musí byť ordinálneho typu.

Types of actual and formal var parameters must be identical
Typy skutočných a formálnych var parametrov musia byť rovnaké.

Too many actual parameters
Príliš veľa skutočných parametrov

Not enough actual parameters
Nedostatok skutočných parametrov

Syntax error in real number
Syntaktická chyba v zápise reálneho čísla

There is no overloaded version of 'IntToStr' that can be called with these arguments
Neexistuje preťažená verzia funkcie IntToStr, ktorú by sme mohli volať s týmito argumentami.

For loop control variable must be simple local variable
Riadiaca premenná cyklu musí byť jednoduhá lokálna premenná.

Variable x is declared but never used in Unit1.pas
Premenná x je deklarovaná, ale nikde v Unit1.pas sa nepoužila.

Variable '<element>' might not have been initialized
Premenná ‘<element>’ by nemusela byť inicializovaná.

FOR-Loop variable '<element>' may be undefined after loop
Je možné, že premenná ‘<element>’ cyklu for bude mať po skončení cyklu nedefinovanú hodnotu.

Value assigned to '<element>' never used
Hodnota priradená premennej ‘<element>’ sa nikdy nepoužila.

Text after final 'END.' - ignored by compiler
Text za záverečným END. – prekladač ho ignoruje.

Posledná zmena: utorok, 2 augusta 2011, 05:38