### Compiler Error Messages EDC3700 - EDC3819

EDC3700
  "&1" keyword is not supported on this platform. Keyword is ignored.

  A keyword has been specified on a platform that does not support it.

  Recovery

  Remove the keyword.

EDC3701
  The "&1" qualifier cannot be applied to thread object "&2".

  The qualifier is being applied to an object with __thread attribute for which the qualifier is not valid.

  Recovery

  Remove the qualifier.

EDC3714
  Detected &1 :colon. &2

  An LE informational message was detected while parsing #pragma runopts options.

EDC3715
  Detected &1 :colon. &2

  An LE warning message was detected while parsing #pragma runopts options.

EDC3717
  Pragma cannot be processed due to compiler error. Pragma is ignored.

  The compiler detected an error while processing pragma directive and cannot recover. The pragma will be ignored.

  Recovery

  Contact your IBM Representative.

EDC3718
  Data members cannot follow zero-sized array.

  The zero-sized array must be the last member in the class.

  Recovery

  Make the zero-sized array the last member of the class

EDC3719
  class "&1" cannot be used base class because it contains a zero-sized array.

  Using a class with a zero-sized array as a base class will result in members being added after the array.

  Recovery

  Either remove the zero-sized array from the base class or re-structure the class hierarchy so the base class(es) don't include this base class.

EDC3731
  Function linkage differs from that of overridden function "&1".

  The linkage of a virtual function must agree with the linkage of base class member functions that it overrides.

  Recovery

  Change the linkage keyword to agree with the base class method.

EDC3732
  "&1" linkage cannot be specified for a virtual function.

  Virtual functions may not have 16 bit or Pascal linkage.

  Recovery

  Remove or replace the linkage modifier.

EDC3733
  Unexpected end of line encountered.

  A statement on this line is incomplete.

  Recovery

  Either finish the incomplete statement or remove it.

EDC3734
  The enum cannot be packed to the requested size of &1.

  The enum type is too large to fit in the storage requested with the enumsize pragma.

  Recovery

  Redefine the storage to a larger size.

EDC3735
  The value specified on #pragma enumsize is out of range.

  The specified #pragma option is not within the range of valid values.

  Recovery

  Specify a value of 1, 2, or 4 on the #pragma enumsize.

EDC3736
  The value specified on #pragma enumsize is not an integer constant.

  The value specified on the #pragma enumsize must be an integer constant.

  Recovery

  Specify an integer constant of 1, 2, or 4 on the #pragma enumsize.

EDC3739
  Attempting to pop an empty alignment stack. Current alignment may change.

  Alignment stack is empty. New packing value is set to either the alignment specified for this pragma or the default alignment for this module.

  Recovery

  Remove 'POP' operation, or ensure alignment stack has been set up correctly.

EDC3740
  Identifier does not exist in the alignment stack. Current alignment may change.

  Identifier does not exist in alignment stack. New Packing value is set to either the alignment specified for the pragma or the default alignment for the module.

  Recovery

  Remove identifier, or ensure alignment stack has been set up correctly.

EDC3741
  Number of arguments in function is more than 400, this exceeds target operating system limit.

  The max number of arguments to a function can be used on AS/400 is limited to 400.

  Recovery

  Change the program in a way that this limit will not be exceeded.

EDC3742
  Csect option is ignored due to naming error.

  The compiler was unable to generate valid csect names.

  Recovery

  Use the #pragma csect to name the code and static control sections.

EDC3743
  The divisor for the division operator cannot be zero.

  Recovery

  Change the expression used in the divisor.

EDC3744
  The pragma is accepted by the compiler. The pragma will have no effect.

  The pragma is not supported by this compiler.

  Recovery

  Change or remove the #pragma directive.

EDC3746
  The option specified does not match the file &1 in library &2.

  The option specified in the #pragma mapinc directive is not valid for the file selected. The possible reasons are :colon. (1) The option specified is key and the file is not a keyed file. (2) The option specified is indicators and either the file does not specify the INDARA keyword or there are no indicators in the record format. (3) The option specified is input, output, or both and the format does not contain any fields of this type. This can occur if the file is not externally described.

  Recovery

  Change the option specified to match the file.

EDC3747
  The combination of options is not valid.

  The combination of options specified in the #pragma mapinc directive is not valid. (1) The options indicators and key are mutually exclusive. (2) Only one of the options input, output or both may be specified. The #pragma mapinc directive is ignored.

  Recovery

  Specify a valid combination of options.

EDC3748
  "&1" was declared as "&2", but is now declared as "&3". Export is assumed.

  The declaration conflicts with a previous declaration of the same name.

  Recovery

  Change one of the names or eliminate one of the declarations.

EDC3749
  "&1" was previously declared as "&2", but is now defined. Export is assumed.

  Defined symbols cannot be imported. The compiler will assume that you want to export this symbol rather than import it.

EDC3751
  "&1" is not defined in this compilation and cannot be used in pragma noinline directive.

  Only functions defined in this compilation can be used in pragma noinline directive.

  Recovery

  Remove the pragma noinline directve or define the function in this compilation unit.

EDC3752
  The physical size of an array is too large.

  The compiler cannot handle any size which is too large to be represented internally.

  Recovery

  Reduce the size of the array.

EDC3753
  The physical size of a struct or union is too large.

  The compiler cannot handle any size which is too large to be represented internally.

  Recovery

  Reduce the size of the struct or union members.

EDC3754
  The static storage is too large.

  The compiler detected an static storage declaration that has a constant greater than 16773104.

  Recovery

  Change the storage size to an integral constant expression less then or equal to 16773104.

EDC3755
  #include searching for file &1.

  The preprocessor is searching for the specified include file.

EDC3756
  The "&1" qualifier is not supported on the target platform.

  A qualifier has been specified on a platform that does not support it.

  Recovery

  Remove the qualifier.

EDC3757
  The main function, "&1", cannot be overloaded.

  The user attempted to declare or define a function that overloads the name of the main function.

  Recovery

  Change the name of the function being declared or defined.

EDC3759
  The array bound is too large.

  The array bound should be a value less than or equal to max int.

  Recovery

  Reduce the number of elements in the array.

EDC3760
  "&1" was not specified in the previous declaration of "&2".

  An attribute has been specified that conflicts with the previous declaration of a name.

  Recovery

  Remove the attribute.

EDC3762
  Pragma "&1" is not supported on the target platform. It is ignored.

  A pragma has been specified on a platform that does not support it.

  Recovery

  Remove the pragma.

EDC3763
  Suboption "&1" for option "&2" is not supported for C++ programs. Suboptions is ignored.

  The command line has an option with a suboption that is not supported in the C++ language.

  Recovery

  Change/remove the suboption.

EDC3764
  Compiler cannot create temporary files.

  The intermediate code files could not be created. Please verify that the target file system exists, is writable and is not full.

  Recovery

  Ensure that the designated location for temporary objects exists, is writable and is not full.

EDC3765
  Pragma import is not supported on the target platform, the _Import keyword should be used instead.

  #pragma import is not supported. The _Import keyword should be used in the symbol declaration.

  Recovery

  Remove #pragma import and add the _Import keyword to the symbol declaration.

EDC3766
  Variable "&1" needs an explicit "__thread" specifier if its initializer is process dependent.

  This variable was assumed to be sharable because it was declared "const", but it is dynamically initialized. If that initialization may yield different values in different processes, the variable should be declared with the "__thread" specifier.

  Recovery

  Add "__thread" to the declaration if required.

EDC3772
  The preprocessor macro "&1" was expanded inside a pragma directive.

  A preprocessor macro was expanded inside a pragma directive. Please ensure that this is the desired result.

  Recovery

  Please ensure that the macro is intended for expansion.

EDC3773
  The "&1" keyword is not supported on the target platform.

  A keyword has been specified on a platform that does not support it.

  Recovery

  Remove the keyword.

EDC3774
  The "&1" keyword is not supported on the target platform.

  A keyword has been specified on a platform that does not support it.

  Recovery

  Remove the keyword.

EDC3784
  "&1" cannot derive from "&2" because of conflicting object models.

  A class is derived from another class whose object model is not the same as the derived class.

  Recovery

  Change the object model of the base or the derived class.

EDC3785
  Suboption "&1" for option "&2" is not supported on the target platform. The option is ignored.

  The option has been specified with a suboption that is not supported on the target platform.

  Recovery

  change the suboption, or remove the option.

EDC3786
  Argument "&1" for pragma "&2" is not supported on the target platform. Pragma is ignored.

  The pragma has been specified with an argument that is not supported on the target platform.

  Recovery

  Remove the pragma or ignore this message.

EDC3787
  The "%%" and "%%%%" digraphs will be obsolete in the next release of this product. Please use "% :colon." and "% :colon.% :colon." instead.

  The "%%" and "%%%%" digraphs will not be supported in the next release. Please use the new digraphs "% :colon." and "% :colon.% :colon.".

  Recovery

  Replace the old digraphs with the new digraphs.

EDC3791
  Options "&1" and "&2" are not compatible.

  The specified options cannot be used together.

  Recovery

  Change option values.

EDC3794
  The external name &1 must not conflict with the name in #pragma csect or the csect name generated by the compiler.

  A external name is the same as the name defined in a pragma csect or the csect name generated by the compiler.

  Recovery

  Change either the external name or the csect name.

EDC3798
  There is more than one #pragma csect statement.

  A duplicate #pragma csect is ignored.

  Recovery

  Remove the duplicate #pragma csect statement.

EDC3800
  #&1 directive has no effect.

  A preprocessor directive has been specified that has no effect.

  Recovery

  Remove the preproccessor directive.

EDC3801
  Attempting to pop an empty enum stack. Pragma is ignored.

  Enum stack is empty. Size of enum is set to default value.

  Recovery

  Remove 'pop' or 'reset' operation, or ensure enum stack has been set up correctly.

EDC3802
  #pragma spc must appear as the first statement after the extern "spc" statement.

  This #pragma must be the first statement before any code and after the extern "spc" statement and its first (left) brace. It may not appear anywhere else within the scope of the extern. A semicolon will be inserted after the misplaced pragma.

  Recovery

  Place this #pragma as the first statement before any code and after the extern "spc" statement and its first (left) brace.

EDC3803
  #pragma spc storage suboperand "&1" is invalid.

  The operand for the #pragma spc storage suboperand must be an unsigned integer between zero and 0xFFFFFFFF, an identifier beginning with an "&", or an identifier beginning with a "%".

  Recovery

  Ensure that the operand is an unsigned integer or has a "&" or "%" as the first character.

EDC3804
  The identifier "&1" has not been declared, so it cannot be used in a #pragma spc storage suboperand.

  The #pragma spc storage suboperand may only apply to those identifiers which have been declared.

  Recovery

  Declare the identifier within the function governed by the #pragma spc storage directive.

EDC3805
  The #pragma spc instruction suboperand has an invalid instruction "&1".

  The #pragma spc instruction suboperand must be one of the following characters :colon. BAL, BALR, BAS, or BASR.

  Recovery

  Correct the instruction subfield in the #pragma instruction suboperand to match one of the four above.

EDC3806
  #pragma spc instruction suboperand "&1" is out of range.

  The offset for the #pragma spc instruction suboperand must be an integer in the range 0 to 4095.

  Recovery

  Ensure that the operand is in the specified range.

EDC3807
  The #pragma spc prolog or epilog suboperand has too many subfields.

  The #pragma spc prolog or epilog operands may contain at most a macro name followed by optional macro parameters. If the macro macro parameters are specified, they must be separated from the macro name by at least one blank.

  Recovery

  Ensure that there are at most two subfields in the #pragma spc prolog or #pragma spc epilog suboperands.

EDC3808
  The length of the macro name for the #pragma spc prolog or epilog suboperand must not exceed eight characters.

  The length of the macro name for the #pragma spc prolog or epilog suboperand must be in the specified range.

  Recovery

  Ensure that the length of the operand is in the specified range.

EDC3809
  The length of the macro parameters for the #pragma spc prolog or epilog suboperand must not exceed 1024 characters.

  The length of the macro parameters for the #pragma spc prolog or epilog suboperand must be in the specified range.

  Recovery

  Ensure that the length of the operand is in the specified range.

EDC3810
  The suboption specified for the "&1" option is not allowed when the "&2" option is specified.

  The suboption specified in the first option conflicts with the second option. The first option is ignored.

  Recovery

  Correct the conflicting option or suboption.

EDC3818
  Incompatible specifications for options -qarch and -q&1 (or environment variable OBJECT_MODE)

  The values specified for the -qarch and the -q32/64 options (or OBJECT MODE) are not compatible.

  Recovery

  Change option values.

EDC3819
  Incompatible specifications for options -qtune and -q&1 (or environment variable OBJECT_MODE)

  The values specified for the -qtune and the -q32/64 options (or OBJECT MODE) are not compatible.

  Recovery

  Change option values.

Summary of Compiler Error Messages