|
Bugfixes am Forum
Subdomains aktiviert
Counterscript entfernt
|
| |
|
|
Referenzhandbuch |
|
|
Referenzhandbuch
|
Anhang 2
|
Fehlermeldungen
Auf den folgenden Seiten sehen Sie die Auflistung der möglichen Compiler-Fehlermeldungen. AmiBlitz2 gibt diese Fehlermeldungen aus, wenn
der Compiler aus irgendeinem Grund eine Zeile nicht compilieren kann. Der Cursor wird dann in die Zeile gesetzt, die den Fehler
verursacht hat.
Manchmal können auch Fehler auftreten, die nicht direkt mit dem AmiBlitz2-Compiler zusammenhängen, sondern z.B. in einem
Include-File oder Makro auftreten und nicht in der angegebenen Zeile im Sourcecode.
Allgemeine Syntax Errors
Syntax Error
Suchen Sie nach Rechtschreibfehlern und überprüfen Sie die Syntax mit dem Handbuch oder der HELP-Tastenfunktion.
Garbage at End of Line
Tritt auf, wenn man sich verschreibt und zum Beispiel den Semikolon am Anfang von Kommentaren vergißt. Außerdem führt ein
.type-Anhängsel zu diesem Fehler, wenn auf NewTypes zugegriffen wird.
Numeric Over Flow
Der angegebene Wert ist für den vorgesehenen Variablenplatz zu groß. Falls man Bytes hat, die 0..255 eher als -128..127 halten
müssen, sollte der Overflow-Check bei den Options im dem Runtime Errors Teil abgeschaltet werden.
Bad Data
Die Werte, die der Data.type-Anweisung folgen, sind nicht von dem Typ, der dem Data-Befehl vorangeht.
Fehler in Prozeduren
Not Enough Parameters
Der Befehl oder die Funktion brauchen mehr Parameter. Benutzen Sie die HELP-Taste und/oder das Handbuch, um die korrekten Parameter
zu überprüfen.
Duplicate parameter variable
Die Parameter, die in den Anweisungen und Funktionen aufgelistet werden, müssen gleichen Typs sein.
Too many parameters
Es wurden zu viele Parameter angegeben.
Illegal Parameter Type
NewTypes können nicht an Prozeduren übergeben werden.
Illegal Procedure return
Der Übergabewert der Funktion ist von der Syntax her falsch.
Illegal End Procedure
Das Ende der Funktion ist von der Syntax her falsch.
Shared outside of Procedure
Shared-Variablen sind nur in Prozeduren anzuwenden.
Variable already Shared
Shared-Variablen müssen im Namen übereinstimmen.
Can't Nest Procedures
Prozeduren dürfen NICHT in Prozeduren selbst definiert werden, sondern nur im Hauptprogramm.
Can't Dim Globals in Procedures
Globale Arrays dürfen nur im Hauptprogramm definiert werden.
Can't Goto/Gosub a Procedure
Goto und Gosub müssen immer auf existierende Teile im Hauptprogramm zeigen.
Duplicate Procedure name
Eine Prozedur (oder auch eine Funktion) selben Namens ist schon einmal definiert worden.
Procedure not found
Die Anweisung oder die Funktion ist noch nicht definiert worden.
Unterminated Procedure
Der End Function- bzw. End Statement-Befehl muß eine Definition einer
Prozedur beenden.
Illegal Procedure Call
Die Anweisung oder der Funktionsaufruf ist falsch zusammengesetzt.
Illegal Local Name
Kein gültiger Variablenname
Konstantenfehler
Can't Assign Constant
Konstante Werte können nur Konstanten zugewiesen werden, bitte aber nicht Variablen.
Constant not defined
Ein Konstante (wie z.B. #num) ist vor dem ersten Gebrauch noch nicht definiert worden.
Constant already defined
Konstanten können nur ein einziges Mal definiert werden, d.h. daß sie nicht im Programmablauf ihren Wert ändern können.
Illegal Constant
Siehe unter "Can't assign constant".
Fractions Not allowed in Constants
AmiBlitz2 Konstanten können nur aus absoluten Werten bestehen, normalerweise werden sie gerundet, so daß kein Fehler erzeugt wird.
Can't Use Constant
Entsteht bei einem Widerspruch in der Namensdefinition der Konstanten.
Constant Not Found
Die Konstante ist noch nicht definiert worden.
Illegal Constant Expression
Eine Konstante darf nur Ziffern beinhalten, es wurde eine Dezimalstelle, Text oder eine Variable in der Definition mitaufgeführt.
Ausdruckswertfehler
Can't Assign Expression
Der Ausdruck kann nicht berechnet werden, oder die Berechnung hat einen Wert ergeben, der nicht mit der Gleichung übereinstimmt.
No Terminating Quote
Alle Textzuweisungen sollten mit Anführungszeichen anfangen und enden.
Precedence Stack Overflow
Sie haben einen nicht vorhersehbaren Level an Komplexität in dem Ausdruck erreicht, somit ist der Stack-Speicher für die AmiBlitz2
Berechnungen übergelaufen. Ein sehr seltener Fehler!
Illegal Errors
Illegal Trap Vector
Der 68000er hat nur 16 Trap-Vektoren.
Illegal Immediate Value
Eine direkte Variable muß eine Konstante aus dem richtigen Bereich sein.
Illegal Absolute
Der Absolutwert muß definiert und im richtigen Bereich sein.
Illegal Displacement
siehe "Illegal Absolute"
Illegal Assembler Instruction Size
DIe Anweisungsgröße ist nicht möglich.
Illegal Assembler Addressing Mode
Der Adressierungsmodus ist für diesen Opcode nicht möglich.
Libraryfehler
Illegal TokeJsr token number
AmiBlitz2 kann die Library nicht finden, auf die sich der TokeJsr-Befehl bezieht. Dieser Fehler tritt dann
auf, wenn die Library nicht in Def Libs eingebunden ist, im BlitzLibs:-Directory nicht gefunden werden kann oder wenn die Berechnung
falsch ist (Token-Nummer = Libnummer*128 + Token-Offset).
Library not Found : 'Library Number'
AmiBlitz2 kann die Library-Routine, auf die sich Token bezieht, nicht finden, weil sie entweder nicht im DefLibs-File oder nicht im
BlitzLibs:-Verzeichnis ist.
Token Not Found : 'Token Number'
Wenn ein Sourcecode geladen wird, ersetzt AmiBlitz2 alle nicht gefundenen Tokens mit ?????, bei der Compilierung treten dann die o.g.
Fehler auf.
Include-Fehler
Already Included
Derselbe Sourcecode ist schon einmal vorher im Code eingebunden worden.
Can't open Include
AmiBlitz2 kann das Include-File nicht finden, überprüfen SIe den Pfadnamen.
Error reading File
Das DOS hat während des Includes einen Fehler erzeugt (Read/Write-Error?).
Programmablauffehler
Illegal Else in While Block
Überprüfen Sie mit dem Handbuch die richtige Handhabung des Else-Befehls in While..Wend-Schleifen.
Until without Repeat
Repeat..Until ist eine Block-Anweisung und beide Befehle müssen vorhanden sein.
Repeat Block too large
Ein Repeat..Until-Block ist auf eine Länge von 32000 Bytes begrenzt.
Repeat without Until
siehe oben
If Block too Large
AmiBlitz2 kann Blocks mit einer maximalen Größe von 32K verwalten, so auch If..EndIf-Schleifen.
If Without End If
Der If-Befehl hat zwei Formen, falls es keinen Then-Befehl gibt, muß dann
ein End If das Blockende markieren.
Duplicate For..Next Error
Dieselbe Variable ist in zwei oder mehr For..Next-Schleifen verwendet worden.
Bad Type for For..Next
Die For..Next-Indexvariable muß numerischen Typs sein.
Next without For
For..Next ist eine zusammengehörige Anweisung, deshalb müssen stets beide Befehle angegeben werden.
For..Next Block too Long
AmiBlitz2 begrenzt alle Blocks auf 32K Größe.
For Without Next
siehe oben
Variablentyp-Fehler
Can't Exchange different types
Der Exchange-Befehl kann nur Variablen gleichen Typs vertauschen.
Can't Exchange NewTypes
Der Exchange-Befehl kann zur Zeit noch keine NewTypes benutzen.
Type too Big
Der nicht gekennzeichnete Wert ist zu groß, um in den verfügbaren Variablenplatz zu passen.
Mismatched Types
Wird durch den Gebrauch unterschiedlicher Variablentypen in einem Ausdruck verursacht.
Type Mismatch
Dasselbe wie Mismatched Types.
Can't Compare Types
Einige Variablentypen können zum Beispiel nicht verglichen werden.
Can't Convert Types
Einige Variablentypen sind inkompatibel, so daß eine nicht in eine andere umgewandelt werden kann.
Duplicate Offset (Entry) Error
Die NewType-Definition hat zwei Einträge gleichen Namens.
Duplicated Type
Ein Type mit dem gleiche Namen existiert bereits.
End NewType without NewType
Der NewType..End NewType-Block ist EIN Befehl und gehört zusammen.
Type Not Found
Es existiert keine Typ-Definition zu dem angegebenen Typ.
Illegal Type
Kein erlaubter Typ für diese Funktion oder diesen Befehl.
Offset not Found
Der Offset ist in der NewType-Defintion nicht definiert worden.
Element isn't a pointer
Die benutzte Variable ist nicht ein *var-Type und kann somit nicht auf eine andere Variable zeigen.
Illegal Operator for Type
Der Operator kann nicht für diesen Variablentypen benutzt werden.
Too many comma's in Let
Der NewType hat weniger Einträge als die Anzahl der hinter dem Let angegebenen Werte.
Can't use comma in Let
Die Variable, der mehrere Werte zugewiesen werden, ist entweder kein NewType, kann nicht mehrere Werte aufnehmen oder der NewType hat
nur einen Eintrag.
Illegal Function Type
Eine Funktion kann keinen NewType zurückgeben.
Compileranweisungsfehler
CNIF/CSIF without CEND
CNIF und CSIF sind Block-Anweisungen, ein CEND
muß diesen Block beschließen.
CEND without CNIF/CSIF
CNIF..CEND ist eine Block-Anweisung, somit müssen beide Befehle angegeben werden.
Resident-Fehler
Clash in Residents
Residents dürfen nicht dieselben Makro- und Konstanten-Definitionen beinhalten.
Can't Load Resident
AmiBlitz2 kann das Resident-File, das im Options-Requester angegeben wurde, nicht finden. Überprüfen Sie den Pfadnamen.
Makrofehler
Macro Buffer Overflow
Erhöhen Sie die Makro-Puffergröße im Options-Requester. Dieser Fehler kann auch auftreten, wenn ein rekursives Makro eine
Endlos-Schleife erzeugt.
Macro already Defined
Es ist bereits ein Makro mit demselben Namen definiert worden. Dies kann auch schon in einem Imclude-File geschehen sein.
Can't create Macro inside Macro
Makro-Definitionen dürfen nur im Hauptprogramm erscheinen.
Macro without End Macro
End Macro muß eine Makro-Definition beenden.
Macro too Big
Makros dürfen nicht größer als die Makro-Puffergröße im Options-Requester sein.
Macros Nested too Deep
Acht Stufen von Makro-Verknüpfungen sind in AmiBlitz2 möglich. Sollte niemals auftreten!
Macro not Found
Das Makro ist nicht vor dem !Macroname{}-Aufruf definiert worden.
Array-Fehler
Illegal Array Type
Sollte nie auftreten!
Array not found
Ein Variablenname mit nachfolgenden Klammern ist vorher nicht als Array definiert worden. Ein anderer möglicher Fehler ist, daß
man eckige Klammern anstatt runden Klammern für Makro- und Prozedur-Aufrufe benutzt hat, so daß AmiBlitz2 denkt, man würde
sich nicht auf ein Array beziehen.
Array is not a List
Eine List-Funktion ist auf ein Array angewendet worden, das nicht als List-Array erstellt worden ist.
Illegal number of Dimensions
List-Arrays sind eindimensional.
Array already Dim'd
Ein Array kann nicht zweimal dimensioniert werden.
Can't Create Variable inside Dim
Es wurde eine undefinierte Variable als Dimensionsparameter im Dim-Befehl benutzt.
Array not yet Dim'd
Siehe "Array not found"
Array not Dim'd
Siehe "Array not found"
Interrupt-Fehler
End SetInt without SetInt
SetInt..End SetInt ist ein Block, so daß immer beide Befehle vorhanden sein müssen.
SetInt ohne End SetInt
Siehe oben
Can't use Set/ClrInt in Local Mode
Fehler-Benutzung kann nur im Hauptprogramm definiert werden.
SetErr not allowed in Procedures
Fehler-Benutzung kann nur im Hauptprogramm definiert werden.
Illegal nested Interupts
Interupts können natürlich nicht verbunden werden.
Can't nest SetErr
Interupts können natürlich nicht verbunden werden.
End SetErr without SetErr
SetErr..End SetErr ist EINE Anweisung, so daß immer beide Befehle vorhanden sein müssen.
Illegal Interupt Number
Amiga-Interupts sind von 0 bis 13 begrenzt (Sie finden diese bei dem SetInt-Befehl im ersten Kapitel).
Sprungmarkenfehler
Label reference out of context
Sollte nie vorkommen.
Label has been used as a Constant
Sprungmarken können nicht die gleichen Namen wie Variablen haben.
Illegal Label Name
Im Programming-Kapitel des User-Guides ist die korrekte Variablenbenennung erklärt.
Duplicate Label
Eine Sprungmarke ist zweimal im Sourcecode definiert worden. Kann auch bei Makros auftreten, wenn einer Sprungmarke nicht ein \@ vorangeht.
Label not Found
Die Sprungmarke ist im Sourcecode nicht definiert worden (Tippfehler?).
Can't Access Label
Siehe "Label not Found"
Select..End Select-Fehler
Select without End Select
Select und End Select gehören zusammen, deshalb müssen immer beide
Befehle angegeben werden.
End Select without Select
Siehe oben
Default without Select
Der Default-Befehl arbeitet nur in Select..End Select-Anweisungen.
Previous Case Block too Large
Ein Case-Abschnitt in einem Select-Block ist größer als 32KB.
Case without Select
Der Case-Befehl funktioniert nur in Select..End Select-Anweisungen.
Blitzmodus-/ Amigamodus-Fehler
Only available in Blitz Mode
Der Befehl ist nur im Blitzmodus verfügbar, unter "Modus" des jeweiligen Befehls finden Sie im Handbuch die nutzbaren
Befehle im jeweiligen Modus.
Only Available in Amiga Mode
Der Befehl ist nur im Amigamodus verfügbar, unter "Modus" des jeweiligen Befehls finden Sie im Handbuch die nutzbaren
Befehle im jeweiligen Modus.
Seltsame Fehler...
Expression too Complex
Sollte niemals vorkommen.
Not Supported
Sollte niemals vorkommen.
Illegal Token
Sollte ebenfalls niemals vorkommen!
|
|
|
|
|
|