Chybové hlásenia v Delphi - Error, Fatal Error
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í:
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é. Niektoré hlásenia, s ktorými sa stretávame veľmi často a mali by sme ich poznať: Undeclared identifier: '<element>' File not found: '<element>' Identifier redeclared: '<element>' <element> expected but <element> found ; expected but . found Missing parameter type Unterminated string Ordinal type required File type not allowed here '<element>' is not a type identifier Incompatible types: '<element>' and '<element>' Incompatible types ';' not allowed before 'ELSE' Type of expression must be BOOLEAN Type of expression must be INTEGER Operator not applicable to this operand type Function needs result type Invalid function result type For loop control variable must have ordinal type Types of actual and formal var parameters must be identical Too many actual parameters Not enough actual parameters Syntax error in real number There is no overloaded version of 'IntToStr' that can be called with these arguments For loop control variable must be simple local variable Variable x is declared but never used in Unit1.pas Variable '<element>' might not have been initialized Value assigned to '<element>' never used Text after final 'END.' - ignored by compiler |