Guardian Procedure Errors and Messages Manual
Table 17 Error Subcodes for Process Creation Error 77 (continued)
MeaningSubcode
The loadfile was built to use an Application Binary Interface version that is not supported.18
A process with OSS file privileges attempted to load an ordinary DLL with lesser OSS file privileges.19
Effect No process is created. The name of the file involved might be reported on the home terminal.
Recovery
This depends on the error detail.
Table 18 Corrective Action for Process Creation Error 77
Corrective ActionSubcode
Specify 'highpin off' when running the program (or rebuild the DLL to not need a low pin).1
If this file must be licensed, you must rebuild it specifying localized import rather than globalized or
semi-globalized.
2
Probably indicates a problem in the way the library was built. Contact your service provider. Report
the file name, error code, and the error detail.
3
Probably indicates that either too many segments or too many large segments are already loaded
into the process. To get around this, you might have to try to run the program with fewer libraries.
4
If this file must be licensed, it cannot be loaded without RLD authority; you cannot open it dynamically
using dlopen().
5
Probably indicates that either too many segments or too many large segments are already loaded
into the process. To get around this, you might have to try to run the program with fewer libraries.
6
If an inadvertent collision of symbol names occurred, the PIC source must be changed, recompiled,
and relinked using a unique symbol. Provide this information to the supplier of the PIC program or
7
DLL. If the same symbol is exported by two public libraries, and it is proper for both of them to be
loaded into the same process, report the problem to your service provider. Avoid loading redundant
or unnecessary public SRLs; for example, ensure that all files loaded in the process depend upon the
same C++ runtime or tools.h++++ libraries.
Do not load both a Version 3 C++ loadfile and any Version 1 or Version 2 C++ loadfile into the same
process. If possible, relink a file that used a conflicting C++ version file so that it uses the same C++
version as other loadfiles loaded into the process.
8
You must license this loadfile to continue using it in this manner.9
Avoid this situation either by avoiding unprotected data or by licensing the other loadfiles in the
process when feasible and appropriate. Note that libraries with unprotected data cannot be licensed
10
and then used with an unlicensed program. A loadfile's data will be protected if it has no variable
data, or if it is constructed using the -instance_data data2hidden command to the linker. The former
makes the library's global variables read-only at user privilege; the latter makes them invisible at user
privilege. Therefore, the variables are fully accessible only from privileged code. Note that licensed
DLLs must have localized import and cannot have globalized symbols.
License the referenced DLL when possible. Note that libraries with unprotected data cannot be licensed
and then used with an unlicensed program. This does not apply to licensing most public DLLs such as
the language-support libraries.
11
License the DLL when possible. Note that libraries with unprotected data cannot be licensed and then
used with an unlicensed program. This does not apply to licensing most public DLLs such as the
language-support libraries.
12
To license this loadfile, it cannot contain global symbols.13
If the loadfile must be dataResident, license it. Otherwise relink it without specifying that it be
dataResident.
14
The process must be created by a person or process using the locally authenticated super ID.15
Contact your service provider. Report the error code and the error detail.16
178 Process Creation Errors