ErInternalError
ErInternalError = 3
Example
function IsInternalVmFailure(const ErrorType: TIFException): Boolean;
begin
Result := ErrorType = ErInternalError;
end;
Usage
ErInternalError represents a Velox script-engine consistency failure. The current Velox version does not normally produce this category automatically; use it only when an explicit custom error contract requires that exact value.
Formatting and exception state
ExceptionToString ignores Param and returns Internal error. A manually supplied parameter remains available through ExceptionParam even though the formatter does not show it.
Additional Technical Info
ErInternalError is member ordinal 3 of TIFException, the script-visible declaration that is kept in exact ordinal alignment with PascalScript's runtime TPSError. Its sidebar position 24 is alphabetical navigation metadata and is not its enumeration value.
ErInternalError is ordinal 3 in the shared TIFException/TPSError taxonomy. It represents an internal virtual-machine consistency failure rather than invalid business data or a normal imported-function error.
Current Velox PascalScript runtime source declares and formats the member but contains no explicit CMD_Err, CMD_Err2 or exception-translation producer for it. It remains reachable through RaiseException, persisted compatibility with compiled code, or host code that supplies the enumeration value.
Behavior, recovery and quirks
- Absence of a current automatic producer is part of the contract; documentation must not invent a specific failing opcode or subsystem.
- Do not raise this category for script validation. Use
erCustomErrorso support tooling can distinguish deliberate failures from VM-integrity signals. - If observed without an explicit script raise, preserve the compiled script, product version, procedure/position and surrounding logs for engineering investigation.
- Exception transfer is not a database, dataset, filesystem or external-system transaction. Any earlier side effect remains unless the called API or surrounding Flow provides an explicit rollback contract.
- Do not persist the numeric ordinal as an integration contract. Store the member name, formatted message, parameter and relevant procedure/position with the Velox version.
Related Code Library entries
TIFException- complete member order and shared VM-error contract.ExceptionType- read the category saved for the current executor/handler.ExceptionParam- read its associated parameter before state changes.ExceptionProcandExceptionPos- locate the compiled procedure and instruction.ExceptionToString- exact text/parameter mapping for every category.RaiseExceptionandRaiseLastException- create a new error or preserve the caught one.try..except- handler availability, propagation and rollback boundaries.
External references
- RemObjects PascalScript
uPSRuntime.pas- upstream runtime taxonomy and executor context; the modified source shipped with Velox is authoritative for current behavior.