U (Untrappable) Errors
The following are untrappable errors that may not return valid error locations. These errors result in the display of a runtime error message and program termination.
|
Code |
Description |
|
U01 | |
|
U02 |
Stack overflow. More CALLs than the stack may maintain. |
|
U05 |
Debugger and system version do not match. Under SUNDB86A, if SDBMAKE disabled mouse support, an attempt to load the debugger will result in this error. |
The following untrappable `U' errors pertain only to PLBLinux, PLBWIN, or PLBCON:
|
Code |
Description | ||||||||||||||||||
|
U03 |
Screen definition file cannot be found or is invalid. PLBWIN uses ANSI.DEF. PLBLinux uses various definition files based on either the TERM or PLB_TERM environment table entry. | ||||||||||||||||||
|
U04 |
Invalid object code detected during translation of code. | ||||||||||||||||||
|
U08 |
A hardware check performed to verify the internal storage structure of the executing hardware type failed. | ||||||||||||||||||
|
U09 |
Insufficient memory resources available to perform function. Manifested as C07 during CHAIN. Manifested as S13 on SPLOPEN. At interpreter load, indicates insufficient memory to load the application. For PLBWIN, check the virtual memory size. | ||||||||||||||||||
|
U10 |
Unable to locate specified program file. Program file does not exist as specified or is not located within a Logged On Drive. No program specified & neither ANSWER nor MASTER were on a Logged On Drive. Insufficient access rights/privileges (read access) to the program file. If executing PLBWIN, ensure that PLB_PATH is specified correctly in the program INI file. If executing PLBCLIENT or PLBCLICON, check the PLB_PATH setting in the appropriate section of the PLBSERVE.INI file. | ||||||||||||||||||
|
U11 |
Unable to locate debugger file. It has been renamed to something other than plbdbug.plc. It is not in the directory defined by PLB_SYSTEM. | ||||||||||||||||||
|
U12 |
Object code version incompatible with interpreter. Manifested as C05 during CHAIN. | ||||||||||||||||||
|
U15 |
Graphical User Interface statement encountered with a non-graphical runtime. Also indicates an unsupported feature encountered in the Personal Version. This error can occur if a GETFILE instruction encounters a keyword that is not supported by the current runtime version. | ||||||||||||||||||
|
U16 |
Unable to configure port as required by the interpreter (system error - ioctl(2) failed). | ||||||||||||||||||
|
U17 |
Object code format error. Re-compile the program. | ||||||||||||||||||
|
U18 |
Object code format error. Re-compile the program. If copied from another media, try recopying with binary format mode. | ||||||||||||||||||
|
U19 |
Authorization number problem. Subcodes are provided as follows: | ||||||||||||||||||
|
|
5: All runtimes will give this diagnostic value when all of the following conditions exist. Note that condition (c) only applies to PLBWIN runtimes: a. 'dbserial' was found and a valid authorization was not found. b. PLB_AUTH uet authorization string does not exist or is invalid. c. For PLBWIN only, a valid authorization string in the registry does not exist or is invalid.
Resolution: a. Verify location of 'dbserial' file being used. b. Verify any authorization numbers defined in 'dbserial'. If a DEMO runtime is being used, verify that the authorization number has an expiration time specified. c. Verify PLB_AUTH authorization string if it being used. d. Verify authorization string in registry for PLBWIN runtime. | ||||||||||||||||||
|
|
6: All runtimes will give this diagnostic value when the first valid authorization string found for a runtime has an expired date. Resolution: a. Verify location of 'dbserial' file being used. b. Verify authorization numbers defined in 'dbserial'. c. Verify PLB_AUTH authorization string if it being used. d. Verify authorization string in registry for PLBWIN runtime. | ||||||||||||||||||
|
|
7: This diagnostic value may occur if a valid authorization string is not found in the registry. This will only occur when the authorization string B option has been set to require that a runtime must be installed such that the authorization string is placed into the registry. This only applies to PLBWIN. Resolution: Verify that PLBWIN runtime has been installed properly. | ||||||||||||||||||
|
|
9: This diagnostic value may occur if an authorization string found in the reqistry is invalid for the runtime being used. This will only occur when the authorization string B option has been set to require that a runtime must be installed such that the authorization string is placed into the registry. This only applies to PLBWIN. Resolution: Verify that PLBWIN runtime has been installed properly and that the company name is correct. | ||||||||||||||||||
|
|
10: All runtimes will give this diagnostic value when all of the following conditions exist. Note that condition (c) only applies to PLBWIN runtimes: a. 'dbserial' can not be found. b. PLB_AUTH uet authorization string does not exist or is invalid. c. For PLBWIN only, a valid authorization string in the registry does not exist or is invalid. Resolution: a. Verify PLB_SYSTEM path location being used. b. Determine if 'dbserial' file with authorization strings are to be used at the PLB_SYSTEM path location. c. Verify PLB_AUTH authorization string if it being used. d. Verify authorization string in registry for PLBWIN runtime. | ||||||||||||||||||
|
|
11: Invalid DBSERIAL file. File length incorrect. | ||||||||||||||||||
|
|
12: Error occurred while closing the 'dbserial' file. This should never occur unless there is an OS problem. Resolution: Rename 'dbserial' file and create a new file. | ||||||||||||||||||
|
|
13: The back date tracking value can not be accessed or found. | ||||||||||||||||||
|
|
14: The back date tracking value is invalid. | ||||||||||||||||||
|
|
20: Invalid number in DBSERIAL file. Number incorrect for runtime serial number. | ||||||||||||||||||
|
|
21: Time limit expired. | ||||||||||||||||||
|
U20 |
Operating system call failed {getuid/setuid}. | ||||||||||||||||||
|
U21 |
Maximum number of licensed, concurrent users are already on-line. Up to 5 PLBWIN tasks on a single machine count as one user. Ensure that the PLB_SYSTEM path specified in the Windows PLBWIN.INI file or the environment table (SET) points to a valid directory with write access. The following subcodes are provided: | ||||||||||||||||||
|
|
1: Create or Open failed on audit file. | ||||||||||||||||||
|
|
2: Too many users. The runtime 'e' option will display user count information. | ||||||||||||||||||
|
|
3: Unable to release audit file lock. | ||||||||||||||||||
|
|
4: Rewind/position operation failed on audit file. | ||||||||||||||||||
|
|
5: Unable to write to audit file. | ||||||||||||||||||
|
|
6: Close failed on logout. | ||||||||||||||||||
|
|
7: Unable to locate PLB_SYSTEM uet or ini entry. | ||||||||||||||||||
|
|
8: Unable to locate PLBWSEC.DLL. | ||||||||||||||||||
|
|
9: Invalid or incorrect version of PLBWSEC.DLL. | ||||||||||||||||||
|
|
10: Too many user tasks. | ||||||||||||||||||
|
|
11: Unable to initialize audit file. | ||||||||||||||||||
|
|
12: Invalid number of bytes written to audit file. | ||||||||||||||||||
|
|
13: Unable to position to task count data. | ||||||||||||||||||
|
|
14: Unable to read audit file data. | ||||||||||||||||||
|
|
15:Too many workstation tasks encountered. | ||||||||||||||||||
|
U22 |
A rollback attempted to load the program at a different address than it was at the time the ROLLOUT occurred. | ||||||||||||||||||
|
U25 |
An error was detected in processing the parameter lists for the PROCEDURE function. The UDA data being processed was invalid. The UDA was corrupted. | ||||||||||||||||||
|
U27 |
Current system date unusable. | ||||||||||||||||||
|
U29 |
Compiler and runtime must be serialized the same or the authorization code does not enable the compiler. | ||||||||||||||||||
|
U30 |
Unable to resolve pointer variable. Cause could be corrupted user data area or pointer variable eventually pointing back to itself. The reported error location may be a program location at or before the next instruction when this error occurs. | ||||||||||||||||||
|
U31 |
Share Not Loaded (PLBCON). Sunbelt products will not execute on a machine restarted in the DOS mode of a Windows machine. | ||||||||||||||||||
|
U32 |
Program Global data area required is larger than the default 64KB on initial load. Use runtime -gNNN option to increase default Global data area size. | ||||||||||||||||||
|
U33 |
Unable to allocate Record Lock Entry Table. Insufficient memory to support the number of Records currently being locked. | ||||||||||||||||||
|
U34 |
Invalid PLB_RECORDLOCK keyword entry. | ||||||||||||||||||
|
U35 |
Windows IO locking is not compatible with PHYSICAL Record Locking. | ||||||||||||||||||
|
U36 |
PLB_SYSTEM keyword not found. | ||||||||||||||||||
|
U37 |
PLB_TERM keywordis not found for a Linux runtime. | ||||||||||||||||||
|
U38 |
A file version check has been performed by the runtime and a failure has been detected. When a diagnostic value is greater than 1000, the high order digit of the diagnostic value indicates the type of error encountered and the lower three digits (nnn) indicates the entry number in the [vercheck] section for which the problem has occurred. The diagnostic subcode values are as follows: | ||||||||||||||||||
|
|
1 - Unable to load VERSION.DLL library. | ||||||||||||||||||
|
|
2 - Unable to access VERSION.DLL library functions. | ||||||||||||||||||
|
|
1nnn - The file name for the nnnth entry does not begin/end with a double quote or the file name is determined to be invalid. | ||||||||||||||||||
|
|
2nnn - The nnnth entry has an invalid operator specified. | ||||||||||||||||||
|
|
3nnn - The nnnth entry has data following the version number that is not allowed. | ||||||||||||||||||
|
|
4nnn - The file for the nnnth entry cannot be found. | ||||||||||||||||||
|
|
5nnn - The file for the nnnth entry does not have version information available. This could also occur when the file does not exist. | ||||||||||||||||||
|
|
6nnn - The file for the nnnth entry has file version data too large to be processed by the runtime. | ||||||||||||||||||
|
|
7nnn - The file version data cannot be retrieved for the nnnth file. | ||||||||||||||||||
|
|
8nnn - The runtime is unable to query or use the file version data retrieved for the nnnth file. | ||||||||||||||||||
|
|
9nnn - The file version data has failed to meet the test condition specified for the nnnth entry. | ||||||||||||||||||
|
U39 |
This error can occur when a user defined PROFILE and WINAPI parameter list count is not consistent with the DLL API parameters required. As an example, if a PROFILE or WINAPI action only provides three (3) parameters when an API requires four (4) parameters, the execution of the API is indeterminate and causes the runtime stack to be corrupted. | ||||||||||||||||||
|
U40 |
Invalid version of SUNFHSYS.DLL for runtime or data manager in use. | ||||||||||||||||||
|
U41 |
An unrecoverable FILEPI locking error was caused by an OS failure. | ||||||||||||||||||
|
U42 |
An unrecoverable compression internal error occurred. | ||||||||||||||||||
|
U43 |
The filename specified by the keyword 'PLB_AAMUPPER={filename}' cannot be loaded. Diagnostic values are: 1 - Unable to open AAM Uppercase translation file. 2 - AAM uppercase translation file size is invalid. This file must have a size of 256 bytes. 3 - An error occur while reading the AAM uppercase translation file. This prevented the data from being retrieved. | ||||||||||||||||||
|
U44 |
The encryption keys for PLB_PUBLIC or PLB_LOGON are invalid. The conditions that can cause this error are as follows: PLB_PUBLIC Null string not allowed. PLB_PUBLIC invalid character (0-9 or A-F) required. PLB_PUBLIC limited to 16 significant characters. PLB_PUBLIC zero key invalid. PLB_PUBLIC required before specifying PLB_LOGON. PLB_LOGON Null string not allowed. PLB_LOGON invalid character (0-9 or A-F) required. PLB_LOGON limited to 16 characters. PLB_LOGON zero key invalid. | ||||||||||||||||||
|
U46 |
Unable to start client. Valid subcodes are: 1 - Client not compatible with current version of the server. 2 - Unable to start child process. ( OS failure ) 3 - Licensed connection count exceeded 4 - Demo version expired. 5 - Client protocol error - network error 6 - Insufficient memory to handle connection. 7 - PLBCS_LOGON value not in keyfile 8 - PlbServe Windows service in paused state 9 - PlbServe is shutting down. 10 - Client started more processes than allowed by PLBCS_SINGLEUSE keyword.
Communication errors between a server and a client:
101 - Error receiving message at Plbserve from Plbclient. 102 - Plbserve hard shutdown command executed. 103 - Error un-compressing a Plbclient message at the Plbserve server. 104 - Error sending a message to a Plbclient while flushing a buffer. 105 - Error sending a message to a Plbclient while flushing an implode buffer. 106 - Error sending a message to a Plbclient while flushing a cache list buffer. 107 - Error sending a message to a Plbclient during an EventQueue operation. 108 - Error sending a message to a Plbclient during an EventCheck operation. 109 - Error sending a message to a Plbclient during an EventWait operation. | ||||||||||||||||||
|
U47 |
Insufficient memory available to re-allocate the Plbclient interface message buffer. | ||||||||||||||||||
|
U48 |
A programmatic error occurred during a TRANSACTION. Valid subcodes are: 201 - Transactions not supported 202 - Invalid operation or statement 203 - Unknown statement type 204 - A transaction is already active 205 - No active transaction 206 - Greater than 250 save points 207 - Bad restore value 208 - Optimistic file IO is not supported by the runtime. In this case, all of the file variables used in file IO instructions while a TRANSACTION is active must be specified in the TRANSACTION START instruction file list. 209 - Commit and backout failed 210 - DISPLAY redirection not allowed 211 - SETPROP VISIBLE for a COLLECTION, PLFORM, or WINDOW is not allowed. | ||||||||||||||||||
|
U49 |
A ROLLOUT instruction cannot be executed because one of the following program conditions exist. The error subcode identifies the problem: 100 - A DMAKE variable is active when the ROLLOUT is executed. DMAKE dynamic buffers cannot be saved and restored by a ROLLOUT. 101 - A ROLLOUT cannot be executed after a LFUNCTION or FUNCTION has been executed in a program. This restriction is applied because the ROLLOUT cannot save/restore (L)FUNCTION stack dynamic buffers. 102 - A ROLLOUT cannot be executed if an Exception has been specified in a program. This restriction is applied because the ROLLOUT cannot save/restore Exception dynamic state tables. 103 - A ROLLOUT cannot be executed when dynamic loadmods are active. | ||||||||||||||||||
|
U50 |
Insufficient memory is available to load the auto-load DIM variables. The auto-load DIM variables are compiled into a program when the 'DIM ^size' syntax is used explicitly or implicitly in a program. The reported error location may be a program location at or before the next instruction when this error occurs. | ||||||||||||||||||
|
U51 |
An invalid or corrupted program data variable was detected as a program module was being loaded. | ||||||||||||||||||
|
U52 |
A exception error could not be found while unwinding the call/return stack. This error is an internal system error that has occurred in the runtime. | ||||||||||||||||||
|
U53 |
More than 500 NORETURN instructions were performed without a CALL, RETURN, or CHAIN instruction. | ||||||||||||||||||
|
U55 |
Problem with the FUNCTION stack usage. When a U55 error with PLB (Linux) and a subcode of 999 is encountered, the user should recompile the PL/B program using a 9.1C compiler. The U55 error indicates that there is the potential that a program's UDA can be corrupted and indeterminate program execution might occur. | ||||||||||||||||||
|
U56 |
The client accessing an Application Server does not support ANSI/OEM conversions that are required by the Application Server. When the U56 error occurs, the following error description is presented in an error dialog - "Client version invalid for Application Server Configuration!" | ||||||||||||||||||
|
U58 |
This error can only occur when executing a PLBSERVE runtime and there is a problem sending a cleanup message to a PLBCLIENT during a chaining operation. This error indicates that the runtime was unable to send a cleanup to a client and indeterminate program execution could cause possible GPF errors. | ||||||||||||||||||
|
U60 |
A divide operation with a zero divisor has been executed. | ||||||||||||||||||
|
U61 |
Invalid instruction usage for the GETPARM and LOADPARM instructions. This error occurs when a GETPARM or LOADPARM is executed when the verb execution call stack is empty. These instructions can only be executed from within logic that has been called. | ||||||||||||||||||
|
U62 |
Bad literal reference in a normal PL/B instruction that attempts to change the literal. | ||||||||||||||||||
|
U63 |
Bad literal reference as GUI event data is being passed an event parameter. | ||||||||||||||||||
|
U64 |
Unexpected PL/B instruction error value has been encountered. The subcode value in this case is the bad instruction error value. Please report, this U64, subcode value, and runtime version to Sunbelt technical support when this error is encountered. | ||||||||||||||||||
|
U65 |
A PLBCON runtime is being executed with either an invalid OS STDIN or STDOUT handle. | ||||||||||||||||||
|
U66 |
The SSL support libraries cannot be found and loaded by the PL/B runtime. For a Windows environment, the SSL libraries ( ssleay32.dll and libeay32.dll ) must be installed on the system executing the runtime. For a Linux environment, the SSL shared libraries ( libssl.so and libcrypto.so ) must be installed on the Linux system executing the runtime. | ||||||||||||||||||
|
U67 |
This error occurs when a PL/B instruction or instruction feature is encountered that is not supported by the Plb Web Server. | ||||||||||||||||||
|
U68 |
This error occurs when a restricted PLC program is being executed from a PL/B runtime command line. A restricted PLC can only be loaded and executed using a PL/B CHAIN or LOADMOD operation. | ||||||||||||||||||
|
U70 |
This occurs when a CLASSMODULE encounters an error as a PLBOBJECT is being destroyed. There can be a subcode described as follows:
100: A DESTROY PLBOBJECT operation failed with an extended error description of "CLASSMODERR: nnn" where nnn is one of the following values:
| ||||||||||||||||||
|
U99 |
This PLBSERVE error is sent to a client to indicate that a PL/B program was terminated by a GPF error. |
See Also: PL/B Errors
![]() |