Compiler Error Messages EDC3500 - EDC3599

 
EDC3500
Precompiled header &1 not used because the header file was modified.

The precompiled header cannot be used because the header file that created it was modified after the precompiled header file was generated.

Recovery

Delete the header or use the -genpcomp option to regenerate it.

EDC3501
Precompiled header &1 used.

The compiler is using the precompiled header file indicated.

EDC3518
The string must be terminated before the end of the line.

The compiler detected a string that was not terminated before an end-of-line character was found.

Recovery

End the string or use "\" to continue the string on the next line. The "\" must be the last character on the line.

EDC3519
A character constant must end before the end of the line.

The compiler detected a character constant that was not terminated before an end-of-line character was found.

Recovery

End the character constant or use "\" to continue it on the next line. The "\" must be the last character on the line.

EDC3520
A matching &1 function named "&2" could not be found.

The call may have failed because no member function exists that accepts the 'const/volatile' qualifications of the object.

Recovery

Ensure the type qualifier is correct and that the function name is spelled correctly.

EDC3522
The macro "&1" has been redefined.

An active definition already exists for the macro name being defined. The second definition will be used.

Recovery

Remove or rename one of the macro definitions if necessary.

EDC3523
"&1" is a type name being used where a variable name is expected.

The identifier must be a variable name not a type name.

Recovery

Check that the identifier is a variable name and ensure the variable is not hidden by a type name.

EDC3524
Template "&1" has a missing or incorrect template argument list.

A template name was found where a variable name was expected.

Recovery

Complete the template argument list or change the identifier to a variable name.

EDC3525
Option -qstrict only valid when -qoptimize=3 specified.

Option -qstrict is only meaningful is -qoptimize=3 is specified.

Recovery

Remove the -qstrict option or ignore the warning.

EDC3526
Template friend declaration does not declare a class or a function.

A template friend declaration must declare a class or a function following the template arguments.

Recovery

Change the template declaration to declare a class or a function.

EDC3528
The 'const' object has been cast to a non-'const' object.

A cast has been used to possibly modify a 'const' object. This may cause undefined behaviour at run-time.

Recovery

Remove the cast or make the object non-const.

EDC3529
Atomic bit-field "&1" within the struct "&2" crosses the &3 boundary.

Atomic bit-field cannot cross word boundary for SLIC and dword boundary for SLIC.

EDC3530
Size of __atomic struct "&1" is invalid.

Only size of 1, 2 or 4 is allowed for __atomic struct in the VLIC environment.

EDC3531
#pragma HasHome must be specified for "&1" before #prama IsHome may be specified.

You must specify #pragma HasHome for "&1" before you can specify #pragma IsHome for it.

Recovery

Specify the #pragma HasHome before the #pragma IsHome or remove the #pragma IsHome.

EDC3532
&1 may only be used at file scope.

The pragma is only valid at file scope.

Recovery

Move the pragma so that it is in file scope.

EDC3533
Global friend functions may not be defined in a local class.

A local class cannot have a friend function.

Recovery

Make the function a member function in the local class.

EDC3534
No matching #pragma &1&2 for #pragma &1(pop)

Either a #pragma &1&2 was not specified or a #pragma &1(pop) has already been encountered.

Recovery

Remove the pop or add on|off or iom|som|com|native|default to the pragma.

EDC3535
Control action on #pragma exception_handler is not valid.

The fifth parameter (the control action) of the #pragma exception_handler directive is optional, but if a message identifier list is given on the directive, you must specify a control action. See the <except.h> header file for the list of valid control actions that can be specified on a #pragma exception_handler directive. The only control actions that can be specified when the handler is a label are _HANDLE and _HANDLE_NO_MSG.

Recovery

Specify a valid control action on the #pragma exception_handler directive.

EDC3536
Message identifier list on #pragma exception_handler is not valid.

The message identifier list specified on a #pragma exception_handler directive must be a string literal consisting of seven-character message identifiers separated by white-space (spaces, tabs or a comma).

Recovery

Specify a valid message identifier list.

EDC3537
Message identifier &1 on #pragma exception_handler is not valid.

Each message identifier specified on a #pragma exception_handler directive must consist of seven characters. The last four characters of each identifier must consist only of the digits 0 through 9 and the letters and A through F. The last four characters of MCH messages can only be the digits 0 through 9.

Recovery

Change the message identifier that is not valid.

EDC3538
Function &1 is not correctly prototyped on #pragma &2 directive.

The handler parameter specifies a function which does not have a single parameter of type _INTRPT_Hndlr_Parm_T *. This type is defined in except.h.

Recovery

Correct the prototype and the function definition.

EDC3539
Function &1 is overloaded and no prototypes have required parameters.

The handler parameter specifies a function which does not have a single parameter of type _INTRPT_Hndlr_Parm_T *. This type is defined in except.h. The function name has been overloaded and no prototypes match this criteria.

Recovery

Include a correct prototype and function definition.

EDC3540
The label &2 is not defined in function &1.

The label is referenced but not defined in the function. The label definition (label followed by a colon and a section of code) must appear in the same function that references the label.

Recovery

Define the label in the function or remove the reference.

EDC3541
The type of the handler &1 on the #pragma &2 directive is not valid.

The handler named on the #pragma exception_handler or cancel_handler directive cannot have OS linkage or built-in linkage nor can it be a non-static member function, template function, or member of a template class. The handler named on a #pragma exception_hander directive must be a function or a label; the handler named on a #pragma cancel_handler can only be a function.

Recovery

Change the handler's type.

EDC3542
Function &1 cannot be inlined and will be treated as static.

The inliner is not able to inline this function without changing the behavior of the program. An out-of-line copy of the function will be generated in each compilation unit in which it is used.

Recovery

Remove the inline specification from the declaration so that a single out-of-line copy is generated.

EDC3544
#pragma argument directive has already been specified for function "&1". This #pragma will be ignored.

#pragma argument for a function can only be defined once. Any subsequent specification will be ignored.

EDC3545
Function "&1" specified within #pragma argument should not have any linkage type (except "C") associated with it.

Function with linkage type such as "OS" or "built-in" are not allowed in the #pragma directive.

Recovery

Remove the linkage type or make it "C".

EDC3546
Function specified in #pragma argument must be defined or declared before the directive.

The function specified within the #pragma argument is either not defined or defined after the directive.

Recovery

Define the function before the #pragma argument directive.

EDC3547
The member function "&1" cannot be used in #pragma weak.

Do not use a member function in #pragma weak. Use only standard functions.

Recovery

Replace the member function in the #pragma weak with a standard function.

EDC3562
Alignment is determined at the left brace of the definition.

The alignment has been changed during a class definition.

Recovery

Remove the #pragma align or place it before the class definition.

EDC3574
The host file name is specified incorrectly.

The syntax of the AS/400 host file name specified in the #pragma mapinc directive is not correct. The #pragma mapinc directive is ignored.

Recovery

Specify a correct AS/400 host file name. The syntax for a valid host file name is library-name/file-name(format-name).

EDC3575
An option is specified incorrectly.

The syntax of the option specified in the #pragma mapinc directive is not correct. The #pragma mapinc directive is ignored.

Recovery

Specify a valid option. The possible options are :colon. input, output, both, key, indicators, lvlchk or nullflds.

EDC3576
A data type is specified incorrectly.

The syntax of the data type specified in the #pragma mapinc directive is not correct. The #pragma mapinc directive is ignored.

Recovery

Specify a valid data type for the #pragma mapinc directive. The data type can be d, p, z, _P, 1BYTE_CHAR, or "".

EDC3577
A communication line is busy. The host is not accessed.

The compiler could not access an externally described file because the host communication line was busy.

Recovery

Make sure that the host communication line is active. Compile again.

EDC3578
The host connection is not set up.

The compiler could not access an externally described file because the host connection is not set up.

Recovery

Specify the environment variable ICCASNAME when the host connection is set up. Ensure the communication line is active. Compile again.

EDC3579
A communication error occurred with the host.

A communication error occurred when the compiler called the host to retrieve an externally described file.

Recovery

Restart the host connection. Compile again.

EDC3580
The host file &1 cannot be found.

The compiler could not find the specified externally described file.

Recovery

Ensure the host file name exists. Ensure that the correct library is in the current library list if *LIBL is specified.

EDC3581
The host file &1 cannot be accessed.

The compiler could not access the specified externally described file. The authority level associated with the current job on the host is not sufficient for accessing the specified file.

Recovery

Obtain authority to the externally described file or specify a file to which you have authority. Compile again.

EDC3582
The host file &1 cannot be accessed.

The compiler could not access the specified externally described file. The file is locked by other users.

Recovery

Make sure that the specified file is not locked. Compile again.

EDC3583
No fields exist for format &1, in file &2, in library &3.

No fields declared or no fields exist for the specified format. The fields do not match the options specified in the corresponding #pragma mapinc directive.

Recovery

Ensure the fields in the externally described file match the options specified in the #pragma mapinc directive.

EDC3584
A format specified does not exist in file &1 in library &2.

At least one of the formats specified does not exist in the specified file. The formats in the file did not match the formats specified in the corresponding #pragma mapinc directive.

Recovery

Ensure the formats in the externally described file match the formats specified in the #pragma mapinc directive.

EDC3585
The option specified is not allowed for file &1 in library &2.

The option specified in the #pragma mapinc directive is output, or indicators, but the file selected is a physical or logical file. The #pragma mapinc directive is ignored.

Recovery

(1) Change the option to input, input key, both, both key or nullflds. (2) Specify a different file name in the #pragma mapinc directive.

EDC3586
The option specified is not allowed for file &1 in library &2.

The option specified in the #pragma mapinc directive is key, or nullflds but the file selected is a device file. The #pragma mapinc directive is ignored.

Recovery

(1) Change the option to input, input indicators, output, output indicators, both or both indicators. (2) Specify a different file name in the #pragma mapinc directive.

EDC3587
The compiler encountered a disk error when extracting DDS information.

The compiler encountered an error when creating a file for an externally described file.

Recovery

Ensure that the directory pointed to by the file name in the #pragma mapinc directive has sufficient storage. If using a LAN drive, ensure that the LAN is working properly and you have permission to write to the disk.

EDC3593
Arguments to "OS by_value" linkage functions must be pointers.

Only pointers to USER domain space should be passed as arguments to "OS by_value" linkage functions, otherwise the call will fail. Typically this form of linkage is used to allow SYSTEM state programs to call USER state programs.

Recovery

Verify all arguments are pointers to USER domain.

EDC3594
Disable handler has no matching cancel/exception handler or cancel/exception handlers are out of scope.

The compiler has detected an attempt to disable a non existent exception handler.

Recovery

Verify the placement of the #pragma exception_handler, #pragma cancel_handler and #pragma disable_handler statements.

EDC3596
"&1" does not have external linkage. Pragma export ignored.

The pragmas map, import, and export can only be applied to objects or functions that are external.

Recovery

Give the identifier external linkage.

EDC3597
"&1" is already exported. Duplicate directive ignored.

A function may be imported or exported at most once.

Recovery

Remove one of the directives.

EDC3598
The compiler could not open the output file "&1".

The open command failed for file "&1".

Recovery

Ensure the output file name is correct. Also, ensure that the location of the output file has sufficient storage available. If using a LAN drive, ensure that the LAN is working properly and you have permission to write to the disk.

EDC3599
"&1" cannot be exported. Directive ignored.

The function main cannot be exported.

Recovery

Remove the directive.

 


Summary of Compiler Error Messages