This error occurs when an undefined name or operator is referenced. Example:
/ThisNameDoesNotExist get % There is no such name definedExplanation:
The code tries to retrieve a value associated with a name (ThisNameDoesNotExist) that has not been defined.
Occurs when the filename specified cannot be found or accessed. Example:
(myfile.txt) (r) file % Tries to open a file that does not existExplanation:
Attempts to open myfile.txt for reading, but the file does not exist on the system.
This error is triggered when an operation yields a result that is not within the allowable range or is undefined. Example:
0 0 div % Division by zeroExplanation:
Dividing zero by zero does not produce a defined result.
A rangecheck error occurs when a value is outside the expected range.
Example:
[-1] 1 get % Attempting to access an index that does not existExplanation:
The code attempts to access the second element of a one-item array, which is out of range.
This error happens when an operator is expecting more operands on the stack than are available. Example:
add % Tries to add without enough operandsExplanation:
The add operator requires two operands, but the stack is empty.
Triggered when too many items are pushed onto the stack, exceeding its limit. Example:
1000 1 1 {1 index} repeat % Excessively copies the top of the stackExplanation:
Repeatedly duplicates the top item on the stack without any limit, eventually overflowing it.
Occurs when an operand or result has an incorrect type. Example:
(Hello) length add % Tries to add an integer to a stringExplanation:
Attempts to use the add operator on a string and an integer, which is not valid.
Occurs when attempting an illegal access of an object, such as writing to a read-only object. Example:
/cvLit /readonly def
cvLit cvx exec % Tries to execute a read-only nameExplanation:
Attempts to change or execute a value marked as read-only.
This error occurs when an attempt is made to define or configure a font that is not valid. Example:
/Helvetica findfont 10000 scalefont setfont % Excessive scale might be unsupportedExplanation:
Attempts to scale a font to a size that may be unsupported or undefined, depending on the interpreter's capabilities.
An ioerror happens during input/output operations, such as reading from or writing to a file.
Example:
(myfile.txt) (w) file closefile
(myfile.txt) (r) file readstring % Tries to read from a closed fileExplanation:
Attempts to read from a file that has been closed, leading to an input/output error.