PASCAL HATA MESAJLARI

Pascal ile yazilan programlarin derlenmesinde derleyicinin saptadigi hatalar ve
programin çalistirilmasi sirasinda ortaya çikan hatalar olmak üzere iki çesit hata
durumu vardir.
1. Compiler Errors Messagee
2. Run Time Errors Messages
Compiler Errors (Derleme Hatalari)
Yazim kurallarina ters düsen, hatali kodlamalar yapilan programin derlenmesi sirasinda
ortaya çikan hatalardir. Saptanan hata, hataya iliskin kod ile birlikte açiklanir.
1) Out of memory
Hafizanin yetersiz oldugunu belirtir. Bu problemi çözmek için asagidaki yollar
denenmelidir.
??Compile menüsündeki “Destination memory” seçenegi “Disk” olarak degistirilir.
??“Options” menüsündeki “Linkler” seçenegide “Linker buffer” alani “Disk” yapilir.
Bu islemin DOS komutu satirindaki derleme seçenegi /L ‘dir. (>TPC/L...)
??Hafizada çalisan TSR programlarinin hafizadan silinmesini saglar.
Bu islemlere ragmen hata çözülmezse unit programlarin hacimleri küçültülmelidir.
2) Identifier expected
Turbo Pascalin bir kelime (reserved word) kelime, tanitici ismi olarak kullaniyor.
3) Unknown identifier
Tanimlanmis bir degisken kullaniyor.
4) Duplicate identifier
Tanitici isim mevcut program blogu içerisinde daha önce tanimlanmis.
Ek A. Hata Mesajlari
Pascal 7.0 ile Programlama A.ORAL
209
5) Syntax error
Kaynak text içerisinde geçersiz karakter bulundu.
6) Error in real constant
Sabit real taniminda hata var.
7) Error in integer constant
Sabit integer taniminda hata var.
8 ) String constant exceeds line
String sabitlerde kullanilan tirnak eksik veya fazla.
9) To many nested files
Içiçe çok fazla dosya baglantisi var
10) Unexpected end of file
Program sonundaki END yazilmamis veya dosya sonunu belirten (.) unutulmus.
11) Line too long
Bir satir üzerinde 120 karakterden fazla bilgi bulunamaz.
12) Type identifier expected
Type tanimlayici gerekli
13) Too many open files
Ayni anda açik olan dosya sayisi çok fazla. Config.Sys dosyasindaki Files=xx
seçeneginde xx arttirilmalidir. xx ayni anda açilabilecek dosya sayisini gösterir.
14) Invalid file name
Geçersiz dosya adi veya bulunmayan directory.
15) File not found
Belirtilen dosya aktif directory içerisinde bulunmuyor.
16) Disk full
Disk dolu. Diskten silinebilecek dosyalari silin.
17) Invalid compiler direvtive
Geçersiz compiler bildirisi.
18 ) Too many files
Programin tamaminda cok fazla dosya veya unit var.
19) Undefined type in pointer definition
Pointer taniminda bilinmeyen tip.
20) Variable identifier expected
Degisken tanimlayicisi bekleniyor.
Ek A. Hata Mesajlari
Pascal 7.0 ile Programlama A.ORAL
210
21) Error in type
Tip hatasi. Sembol ile tip tanimina baslanamaz.
22) Structure too large
Yapi çok büyük. Yapisal tip taniminda yapi olusturan alanlarin toplam uzunlugu
65520 byte olmalidir. Bunun için alan tanimlamalarinda, alan uzunluklari
kisaltilmalidir.
23) Set base type out of range
Küme çok uzun. Küme tipi taniminda kümeyi olusturan toplam eleman sayisi 256k
yi geçemez. Küme tanimlamalarinda eleman sayisi azaltilmalidir.
24) File compenents may not be files
Bir dosyaya ait tip olarak baska bir dosya tipi kullanilmaz
25) Invalid string length
String?in uzunlugu geçersiz. Bir stringin maksimum uzunlugu 255 karakter olabilir.
Bu uzunluk kisaltilmali veya parçalanmalidir.
26) Type mismatch
Tip uyusmazligi. Asagidaki durumlarda meydana gelir:
??Atama veya hesaplama islemlerinde sol taraftaki degisken ile sag taraftaki
ifadelerin tipleri ayni olmayabilir.
??Procedure veya function?larda karsilikli gelen parametrelerin tipleri farkli.
??Islemlerde tip uyusmazligi var.
27) Invalid subrange base type
Sayilabilir tipteki elemanlara geçerli tanimlama yapilmalidir.
28 ) Lover bound greater than upper bound
Alt sinir üst sinirdan büyük.
29) Ordinal type expected
Sayilabilir tip gerekir. Real, String, yapisal tip veya Pointer tipleri burada
kullanilmaz.
30) Integer constant expected
Tamsayi sabiti gerekiyor. Tamsayi tipinde tanimlanmamis bir alana tam sayi
konulmaktadir. Saha tanimi veya degeri düzeltmek gerekir.
31) Constant expected
Sabit gerekiyor. ?const? yazilmis fakat, sabit tanimi olmadigi zaman bu hata mesaji
gerekir.
32) Integer or real constant expected
Tam sayi veya gerçek sayi sabiti gerekiyor. Sayisal tanimlanmis bir alana, sayisal
bilgi disinda bir bilgi yerlestiriliyor.
Ek A. Hata Mesajlari
Pascal 7.0 ile Programlama A.ORAL
211
33) Type indentifier expected
Tip tanimi gerekiyor. Tipin belirlenmesi gerekli olan bir degisken tipi belirtilmemis.
34) Invalid function resul type
Fonksiyon sonucunda tipi hatali. Bir fonksiyonun neticesi yapisal tip olamaz.
35) Label isentifier expacred
Etiket tanimi gerekiyor. LABEL kelimesinden sonra bir etiket tanimlamak gerekir. Ya
?LABEL? kelimesi kaldirilmali yada etiket tanimlanmalidir.
36) Begin expected
BEGIN gerekiyor. Ana program veya procedure/function? larda islemler BEGIN
komutundan sonra yazilmalidir.
37) End expected
END bekleniyor.
38 ) Integer expression expected
Tam sayi bir ifade gerekiyor. Tam sayi kullanilmasi gerekli olan bir islemde baska
tip kullanilmistir.
39) Ordinal expression expected
Sayilabilir tipte bir ifade gerekiyor. Sayilabilir tip yerine, islemde baska tip
kullanilmistir.
40) Boolean expression expected
Mantiksal tipte bir ifade gerekiyor.
41) Operand types do not match operator
Islem ile isareti arasinda uyusmazlik var.
42) Error in expression
Ifadede hata var. Aritmetik bir islemde bir taraf eksik olabilir veya sabit taniminda
sag taraf yazilmamistir.
43) Illegal assignment
Hatali atama yapilmis Bir atama isleminde Fonksiyonlar sag tarafta bulunamazlarr.
44) Field identifer expected
Alan tanimi gerekir. RECORD taniminda alan ismi belirtilmemistir.
47) Object file too large
Object dosya hacmi 64 K? dan daha büyük.
48 ) Code segment too large
Program çok büyük. Bir program veya ünite maksimum 65520 byte
olabilir.Programda unitler kullanilmalidir.Unit çok büyük ise, Unit içerisinde baska
unit? ler kullanilarak program kisaltilmalidir.
Ek A. Hata Mesajlari
Pascal 7.0 ile Programlama A.ORAL
212
49) Data segment too large
Tanimlanan sabit ve degiskenlerin hacmi çok fazla. Bir programda tanimlanan
sahalarin toplami maksimum 65520byte olabilir. Buna Unit? lerde kullanilan alanlar
da dahildir. Hatayi gidermek için alan sayisi veya uzunluklar azaltilmalidir.
50) Do expected
DO gereklidir. WHILE, FOR komutlarinda DO gerekir.
54) Of expected
OF gereklidir. CASE komutunda, ARRAY taniminda vs.. gerekli olan OF kelimesi
kullanilmistir.
55) Interface expected
INTERFACE gereklidir. UNIT içerisinde ?INTERFACE? kelimesi yazilmamis.
57) Then expected
THEN gereklidir. IF komutunda THEN kelimesi yazilmamis.
58 ) To or downto expected
TO veya DOWNTO gereklidir. FOR komutunda TO/DOWNTO kelimelerinden biri
kullanilmamis.
59) Undefined forward
FORWARD tanimlanmamis.
??Unit? in INTEFACE bölümünde tanimlanan PROCEDURE veya FUNCTION
IMPLEMENTATION bölümünde tanimlanmamistir.
??PROCEDURE/FUNCTION? da FORWARD kullanildigi halde
PROCEDURE/FUNCTION hiç tanimlanmamistir.
61) Invalid typecast
Geçersiz çevrim yapilmis. Bazi tipler, tanimlandigi gibi degil de uyumlu uyumlu bir
tipte de kullanilabilir.
62) Division by zero
0? a bölme. Bilindigi gibi bir sayinin sifira bölünmesi tanimsizdir.
63) Invalid file type
Geçersiz dosya tipi. Örnegin, tipli dosyada Readln veya text dosyada Seek komutu
kullanilmaz.
64) Connot read or write variables of this type
Bu tip için okuma veya yazma yapilamaz. Yapisal tipler ekranda dogrudan
görüntülenemezler ve ekrandan alinamazlar.
66) String variable expected
String degisken gerekiyor. String tipte olmasi gereken bir degisken yerine baska
tipte bir degisken kullanilmistir.
Ek A. Hata Mesajlari
Pascal 7.0 ile Programlama A.ORAL
213
67) String expression expected
String ifade gerekli.
68 ) Circular Unit
Unitlerin birbirini kullanimi hatali tanimlanmis
69) Unit name mismatch
Unit ismi uyusmazligi var. Unit programinin disk üzerindeki ismi (dosya adi) ile Unit
komutundan sonra yazilan isim ayni olmamalidir.
70) Unit version mismatch
Unit versiyonlari uyusmuyor. Derlenen Unit versiyonu ile, su anda kullanilan Turbo
Pascal versiyonu uyusmuyor. Unit yeniden derlenmelidir. Bunun için;
???Compile? seçeneginden ?Make? veya ?Build? ile yeniden derleme yapilmalidir.
??TPC ile derleme yapiliyorsa, /M veya /B parametreleri kullanilmalidir.
71) Internal stack overflow
Stack segment 'te tasma var. Uzun Procedure alt programi bölün
72) Unit file format error
Unit program kullanilmasi halinde, Dos için .TPU, .TPP, Windows için .TPW uzantili
dosya yok. .PAS dosyaya uygun .TPU, .TPP veya .TPW dosya olusturulmali.
73) Impelementation expected.
Unit tanimi içerisinde zorunlu olarak bulunmasi gereken IMPELEMENTATION
kullanilmamis.
74) Constant and case types do not match
Sabit ve CASE? de kullanilan tipler uyusmuyor. CASE komutunda kullanilan alan
tipi, test edildigi sabitlerle ayni tipte olmalidir.
75) Record variable expected
Kayit degiskeni gerekiyor. Su anda kullanilan degisken tipi RECORD tipinden
olmali.
76) Constant out of range
Sabit, olmasi gereken sinirlari tasiyor.
77) File variable expected
Dosya degiskeni gerekli.
79) Integer or real expression expected
Tam sayi veya gerçek sayi ifade gerekli.
80) Label not within current block
Etiket mevcut blok disinda. Goto komutu ile program akisinin gönderilecegi etiket
yanlis yerde kullanilmis.
Ek A. Hata Mesajlari
Pascal 7.0 ile Programlama A.ORAL
214
81) Label already defined
Etiket zaten tanimlanmis. Ayni etiket ismi ikinci defa tanimlaniyor.
82) Undefined label in preceding statment
Tanimlanmamis etiket kullaniliyor. Etiket tanimi yapilmalidir.
84) UNIT expected
UNIT kelimesinin yazilmasi gerekir.
85) ?;? expected
Noktali-virgül isaretinin yazilmasi gerekir.
86) ?expected
?: ? isaretinin yazilmasi gerekir.
87) ?,? expected
Virgül isaretinin yazilmasi gerekir.
88 ) ?(? expected
?(? Isaretinin yazilmasi gerekir.
89) ?)? expected
?)? isaretinin yazilmasi gerekir.
90) ?=? expected
?=? isaretinin yazilmasi gerekir.
91) ?:=? expected
?:=? isaretinin yazilmasi gerekir.
92) ?[? or ?(.? expected
?[? veya ?(.? isaretinin yazilmasi gerekir.
93) ?]? or ?.)? expected
?]? veya ?.)? isaretinin yazilmasi gerekir.
94) ?.? expected
?.? isaretinin yazilmasi gerekir.
95) ?..? expected
?..? isaretinin yazilmasi gerekir.
96) Too many variables
Degiskenlerin toplam uzunlugu 64 K sinirini asiyor.
97) Invalid FOR control variable
FOR komutu ile kullanilan degiskenin tipi yanlis. Örnegin; For komutunda Real
degisken kullanilamaz.
Ek A. Hata Mesajlari
Pascal 7.0 ile Programlama A.ORAL
215
98 ) Integer variable expected
Integer degisken kullanilmalidir.
99) Files are not allower here
Dosyalar burada kullanilamaz.
100) String length mismatch
Alfasayisal degisken için tanim blogunda verilen uzunlukla islem tanimindaki
uzunluk ölçüleri uygun degil.
101) Invalid ordering of fields
Alanlarin siralamalari geçersiz.
102) String constant expected
Alfasayisal degismez bilgi tanimi yapilmamis.
103) Integer or real variable expected
Tam sayi veya ondalikli sayi degisken tanimi yapilmamis.
104) Ordinal variable expected
Sira belirleme degisken tanimi yapilmamis.
105) Inline error
Turbo Pascal Assembler kodlarinin kullanildigini belirten INLINE komut tanimi hatali.
106) Character expression expected
Karakter ifadesi yapilmamis.
107) Too many relocation items
Çok fazla yeniden konumlandirma basliklari kullanilmis.
108) Overflow in aritmetic operation
Aritmetik islemlerde tasma hatasi.
109) No enclosing For, While,0r Repeiat statement
Islem ifadeleri; FOR, WHILE, veya REPEAT deyimleriyle kapatilmaz.
112) Case constanl out of range
CASE deyimindeki degismez bilgi tanimlanan sinirlan asiyor.
113) Error in statement
Deyim kullaniminda hata var.
114) Cannot call an interrupt procedure
Program akisini bir durduran (interrupt) prosedürü çagrilamaz.
116) Must be in 8087 morle to compile this
Programda tanimlanan genisletilmis sayisal bilgi tiplerinin derlenebilmeleri
için 8087 matematik islemcinin olmasi gereklidir.
Ek A. Hata Mesajlari
Pascal 7.0 ile Programlama A.ORAL
216
117) Target address not found
Bilgilerin aktarilacagi hedef adresi bulunamadi.
118) Include files are not allowed here
INCLUDE program yazilanlar burada kullanilamaz.
119) No inherited methods are accessible here
INHERITED metod yazilimlar verildikleri satirlarda erisilemez.
120) Nil expected
NIL fonksiyonu verilmemis.
121) Invalid qualifier
Geçersiz tanimlama.
122) Invalid variable reference
Geçersiz degisken referans tanimi.
123) Too many symbols
Asiri sembol tanimlamasi.
124) Statement part too largee
Program yazilimdaki deyimler bölümü asiri uzun.
126) Files must be Var parameters
Dosyalarin tanimlarinda VAR parametreleri verilmeli.
127) Too many conditional symbols
Çok sayida kosul sembolleri kullanilmis.
128) Misplacced conditional directive
Kosul direktifi hatali yerlestirilmis.
129) ENDIF directive missing
ENDIF direktifi verilmemis.
130) Error in initial conditional defines
Baslangiç kosul tanimlarinda hatali durum.
131) Header doees not match previous defination
Baslik bir önceki tanima uymuyor.
132) Critical disk error
Disk ortaminda çok önemli hata var.
133) Cannot evaluate this expression
Tanimlanan ifade sonuçlandirilamaz.
134) Expression incorrectly terminated
hatali ifade nedeniyle islem kesildi.
Ek A. Hata Mesajlari
Pascal 7.0 ile Programlama A.ORAL
217
135) Invalid format specifier
Geçersiz format tanimi.
136) Invalid indirect reference
Geçersiz dolayli referans.
137) Structureed variables are not allowed here
Yapisal degiskenler bu satirlarda kullanilmaz.
138) Cannot evaluate without System unit
SYSTEM unit olmadan islem yapilamaz.
139) Cannot access this symbol
Bu yazilim sekline (sembole) erisilemez.
140) Invalid, floating-point operation
Geçersiz ondalikli sayisal islemi.
141) Cannot compile overlays to memory
Bellekte OVERLAY yazilimlari derlenemez.
142) Pointer or procedural variable expected
Pointer veya prosedür degiskenleri tanimlanmamis.
143) Invalid procedure or function reference
Geçersiz prosedür veya fonksiyon referansi kullanilmis.
144) Cannot overlay this unit
Overlay olarak tanimlanan unit, overlay unit olamaz.
146) File access denided
Program veya dosya erisimi yapilamiyor.
147) Object type expeected
OBJECT bilgi tipi yapilmamis.
148) Local object types are not allowed
Çagiran programdaki lokal nesne bilgi tiplerihatali
149) Virtual expected
VIRTUAL tanimi yapilmamis.
I50) Method identifier expected
METHOD yazilim tanimi yapilmamis.
151) Virtual constructor are not allowed
VIRTUAL CONSTRUCTOR tip belirleyicisi hatali taniinlanmis.
Ek A. Hata Mesajlari
Pascal 7.0 ile Programlama A.ORAL
218
152) Constiuctor identifier expected
CONSTRUCTOR bilgi kesim tanimi yapilmamis.
153) Destructor identifier expected
DESTRUCTOR tammi yapilmamis.
154) Fail only allowed within constructors
Sadece CONSTRUCTOR yapisal tammlannda hata olabilir. 1 SS Invalid combination of opcorle and
operandsGeçersiz TURBO ASSEMBLER yazilim opcode kombinasyonu veya islemi.
156) Memory reference expected
Bellek referansi yapilmamis.
157) Cannot add orsubtruct relocatable symbol.
Yeniden yerlestirilebilir yazilimlardaki sayisal degerlerde toplama veya çikarma yapilamaz.
158) Invalid register combination .
Geçersiz yazmaç kombinasyonu.
159) 286/287 instructions are not enabled
286/287 yapisal bilgileri etkin duruma alinamadi.
160) Invalid symbol reference
Geçersiz yazilim kod referansi.
161) Code generation error
Kod yaratma hatasi.
162) Asm expected
TURBO ASSEMBLER yazilimlarinda ASM ifadesi yapilmamis.
163) Duplicate dynamic method index
Ikinci kez tammlanan dinamik (Heap) bellek method indis elemani
164) Duplicate resource identifier
Ikinci kez tanimlanan RESOURCE WORKSHOP bilgi tanimi.
165) Duplicate or invalid export index
Ikinci kez tanimlanan veya geçersiz export (baska bir harici programlara veya dosyalara aktarilmak
üzere hazirlanan bilgi yapilan) indisi.
166) Procedurie or function identifier expected
Prosedür veya fonksiyon kesim adi tanimi yapilmamis.
167) Cannot export this symbol
Tanimlanan yazilim sekli (sembol) harici bir programa veya dosyaya aktarilamaz.
168) Duplicate export name
Ikinci kez tanimlanan export bilgi tanim adi.
Ek A. Hata Mesajlari
Pascal 7.0 ile Programlama A.ORAL
219
169) Executable file header too large
Çalistirilacak program basligi çok uzun.
Run-Time Errors Messages
Turbo/Borlan Pascal DOS modunda çalisirken asagidaki hatalarla karsilasilabilir.
1) Invalid function number
Geçersiz fonksiyon numarasi. Mevcut olamayan DOS fonksiyonu çagriliyor.
2) File not found
Reset, Append, Rename veya Erase komutlariyla kullanilan dosya degiskenine
bilinmeyen dosya ismi atanmis. Dosya bulunamiyor.
3) Path not found
Reset, Rewrite, Append, Erase, ChDir, MkDir veya RmDir komutlari ile belirtilen
ortam/yol (path) bulunamiyor.
4) Too many open file
Ayni anda açilan dosya sayisi fazla. Bunu engellemek için CONFIG.SYS dosyasi
içerisinde tanimlanan Files=xx tanimindaki dosya sayisi arttirilmalidir.
5) File access error
??Reset veya Append komutlarinda belirtilen dosya degiskenine read-only özelligi
olan directory/dosya adi atanmis.
??ReWrite komutu ile olusturulmaya çalisilan dosyanin bulundugu directory dolu
veya ayni isimli read-only özelligi olan bir dosya mevcut.
??Rename komutu ile dosyaya verilecek yeni isim altinda baska bir dosyanin mevcut
olmasi
??Erase komutu ile silinecek olan dosya read-only özelligine sahip.
??MkDir komutu ile var olan bir directory olusturulmaya çalisiliyor.
??RmDir komutu ile silinmeye çalisilan directory'nin içi bos degil.
??Açik olmayan bir dosyadan Read veya BlockRead komutlariyla bilgi okunmaya
çalisiliyor.
??Açik olmayan bir dosyaya Write veya BlockWrite komutlariyla bilgi okunmaya
çalisiliyor.
6) Invalid file handle
Bu hata geçersiz bir dosya istegi DOS sistemine iletilirse ortaya çikar.
12) Invalid file access code
Geçersiz dosya erisim kodu. Reset veya Append komutlarinda geçersiz dosya modu
degeri kullanilmis.
15) Invalid drive number
GetDir veya Chdir komutlari ile geçersiz bir sürücü numarasi kullanilmis.
16) Cannot remove current directory
RmDir komutu ile aktif olan directory silinmeye çalisiliyor.
Ek A. Hata Mesajlari
Pascal 7.0 ile Programlama A.ORAL
220
17) Cannot rename across drives
Rename komutunda belirtilen her iki dosya ayni sürücüde degildir.
I/O Errors
Giris/Çikis islemleriyle ilgili programlarda asagidaki hatalarla karsilasilabiliriz.
100) Disk read error
Read komutu ile dosya sonu isaretinden sonra okuma islemi yapiliyor.
101) Disk write error
Close, Write, Writeln veya Flush komutlari ile dolu bir disk'e islem yapilmaya
çalisiliyor.
102) File not assigned
Reset, ReWrite, Append, Rename veya Erase komutlarinda kullanilan 'dosya
degiskenine' dosya ismi atanmamis.
103) File not open
Üzerinde islem yapilmaya çalisilan dosya açik degil.
104) File not open for input
Text dosyasi giris için açik degil. Bu durumdaki dosyaya Read, Readln, Eof Eoln,
SeekEof veya SeekEoln komutlarinin kullanilmasi sirasinda olusur.
105) File not open for output
Text dosyasi çikis için açik degil. Bu durumdaki dosyaya Write veya Writeln
komutlarinin kullanimi sirasinda olusur.
106) Invalid numeric format
Bir text dosyadan Read veya readln komutu ile sayisal bilgi okunmasi sirasinda olusur
150) Disk is write protected
Disk yazmaya karsi korumali.
151) Unknown unit
Tanimsiz unit.
152) Drive not ready
Sürücü hazir degil.
154) CRC error in data
Datada hata var
156) Disk seek error
Bilgi okuma sirasinda hata olustu. Diskte belirtilen kayita konumlanilamiyor.
Ek A. Hata Mesajlari
Pascal 7.0 ile Programlama A.ORAL
221
157) Unknown media type
DOS tarafindan taninmayan dosya. DOS uyumlu olmayan bir format sekli kullanilmis.
158) Sector not found
Disk'teki bozukluktan dolayi bilgiye erisilemiyor.
159) Printer out of paper
Printer'e kagit takili degil.
160) Device write fault
Donanim hatasindan dolayi disk'e kayit yapilamiyor.
161) Device read fault
Donanim hatasi nedeniyle bilgi okunamiyor.
162) Hardware failure
Donanim hatasi
200) Division by zero
/, div veya mod operatörleri ile yapilan bölme isleminde sayi sifira bölünüyor. Bölme
isleminin paydasi sifir. Programda bölme hatasi olmasa da Win98 isletim sisteminde
CRT uniti kullanilmasi halinde bu hata mesaji ile karsilasilmaktadir. Win 98 altinda
Turbo Pascal ve Bp çalistirildiginda CRT uniti kullanilmamalidir.
201) Range check error
{$R+} compiler bildirisi kullanildiginda, degiskene sinirlari disinda bilgi giriliyor veya
dizinli degiskenin boyutlari sinir disinda.
205) Floting point overflow
Turbo Pascalda tanimlanan degisken alanlarinin disina tasiliyor.

İyi çalışmalar