Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, Messages and Codes Manual

Compiler Error Messages (1226-1499, 2400-2599)

IBM1226I E
Area extent is reduced to maximum value.
Explanation:

The maximum size allowed for an AREA variable is 16777216.

IBM1227I E
keyword statement is not allowed where an executable statement is required. A null statement will be inserted before the keyword statement.
Explanation:

In certain contexts, for example after an IF-THEN clause, only executable statements are permitted. A DECLARE, DEFINE, DEFAULT or FORMAT statement has been found in one of these contexts. A null statement, (a statement consisting of only a semicolon) will be inserted before the offending statement.

IBM1228I E
DEFAULT statement is not allowed where an executable statement is required. The DEFAULT statement will be enrolled in the current block, and a null statement will be inserted in its place.
Explanation:

In certain contexts, for example after an IF-THEN clause, only executable statements are permitted. A DEFAULT statement has been found in one of these contexts. A null statement (a statement consisting of only a semicolon) will be inserted in place of the DEFAULT statement.

IBM1229I E
FORMAT statement is not allowed where an executable statement is required. The FORMAT statement will be enrolled in the current block, and a null statement will be inserted in its place.
Explanation:

In certain contexts, for example after an IF-THEN clause, only executable statements are permitted. A FORMAT statement has been found in one of these contexts. A null statement (a statement consisting of only a semicolon) will be inserted in place of the FORMAT statement.

IBM1230I E
Arguments have been specified for the variable variable name, but it is not an entry variable.
Explanation:

Argument lists are valid only for ENTRY references.

 
 
   dcl a(15) entry returns( fixed bin(31) );
   i = a(3)(4);
 
IBM1231I E
Arguments/subscripts have been specified for the variable variable name, but it is neither an entry nor an array variable.
Explanation:

Argument/subscript lists are valid only for ENTRY and array references.

 
 
   dcl a fixed bin;
   i = a(3);
 
IBM1232I E
Extraneous comma at end of statement ignored.
Explanation:

A comma was followed by a semicolon rather than by a valid syntactical element (such as an identifier). The comma will be ignored in order to make the semicolon valid. Under RULES(LAXPUNC), a message with the same text, but lesser severity would be issued

 
 
    dcl 1 a, 2 b fixed bin, 2 c fixed bin, ;
 
IBM1233I E
Missing character assumed.
Explanation:

The indicated character is missing, and there are no more characters in the source. The missing character has been inserted by the parser in order to correct your source. Under RULES(LAXPUNC), a message with the same text, but lesser severity would be issued

IBM1234I E
Missing character assumed before character.
Explanation:

The indicated character is missing and has been inserted by the parser in order to correct your source. Under RULES(LAXPUNC), a message with the same text, but lesser severity would be issued

 
 
     display( ’Program starting’ ;
 
IBM1235I E
No data format item in format list.
Explanation:

Data items cannot be transmitted unless a data format item is given in the format list.

 
 
   put edit ( (130)’-’ ) ( col(1) );
 
IBM1236I E
Subscripts on keyword labels are ignored.
Explanation:

A label specified on a PROCEDURE, PACKAGE or ENTRY statement should have no subscripts.

IBM1237I E
EXTERNAL ENTRY attribute is assumed for variable-name.
Explanation:

An undeclared variable is used with an arguments list. This should give it a contextual declaration as BUILTIN, but its name is not that of a built-in function.

IBM1238I E
The second argument to the BUILTIN name built-in is greater than the precision of the result.
Explanation:

The sift amount in ISLL is should not be greater than the precision of the result.

 
 
    i = isll( n, 221 );
 
IBM1239I E
The attribute attribute is not supported and is ignored.
Explanation:

The named attribute is either not part of the SAA PL/I language and is not supported on this platform.

 
 
   dcl f file transient;
 
IBM1240I E
The attribute attribute is invalid in a RETURNS descriptor.
Explanation:

The RETURNS descriptor may not specify a structure, union or array.

 
 
   dcl a entry returns( 1 union, 2 ptr, 2 ptr );
 
IBM1241I E
Only ’=’ and ’^=’ are allowed as operators in comparisons involving complex numbers.
Explanation:

Equal and not equal are defined for complex variables, but you have attempted to relate them in some other way.

IBM1242I E
Only ’=’ and ’^=’ are allowed as operators in comparisons involving program control data.
Explanation:

Other relationships between program control data are not defined. Perhaps a variable was misspelled.

IBM1243I E
REGIONAL(integer specification (2 or 3)) ENVIRONMENT option is not supported.
Explanation:

REGIONAL(2) and REGIONAL(3) ENVIRONMENT options are syntax-checked during compile-time but are not supported during run-time.

IBM1244I E
The variable specified as the option value in an ENVIRONMENT option must be a STATIC scalar with the attributes REAL FIXED BIN(31,0).
Explanation:

This applies to the KEYLENGTH, KEYLOC and RECSIZE suboptions.

IBM1245I E
The variable specified as the option value in an ENVIRONMENT option must be a STATIC scalar with the attribute CHARACTER.
Explanation:

This applies to the PASSWORD suboption.

IBM1246I E
Argument to BUILTIN name built-in should be CONNECTED.
Explanation:

This message applies, for example, to the ADDR built-in function. The value returned by the ADDR function is the address of the first byte of its argument. If you use this pointer to refer to a based variable, the variable may be mapped over storage occupied by some other variable, rather than the storage occupied by the argument.

IBM1248I E
Argument to BUILTIN name built-in should have arithmetic type.
Explanation:

The argument to the named built-in function should have arithmetic type. The required implicit conversion will be performed, but this may indicate a programming error.

IBM1249I E
Argument to BUILTIN name built-in should have CHARACTER type.
Explanation:

The argument to the named built-in function should have CHARACTER type. The required implicit conversion will be performed, but this may indicate a programming error.

IBM1272I E
Argument number argument number to BUILTIN name built-in is negative. It will be changed to 0.
Explanation:

The second argument to built-in functions such as COPY and REPEAT must be nonnegative.

 
 
    x = copy( y, -1 );
 
IBM1273I E
Third argument to BUILTIN name built-in is negative. It will be changed to 0.
Explanation:

The third argument to built-in functions such as COMPARE, PLIFILL, and PLIMOVE must be nonnegative.

 
 
    call plimove( a, b, -1 );
 
IBM1274I E
RULES(NOLAXIF) requires BIT(1) expressions in IF, WHILE, etc.
Explanation:

Expressions in IF, WHILE, UNTIL and undominated WHEN clauses should have the attributes BIT(1) NONVARYING. If not, the expression should be compared to an appropriate null value. This message will not be issued if the RULES(LAXIF) option is specified.

 
 
    dcl x bit(8) aligned;
     ...
    if x then ...
 
IBM1281I E
OPTIONS(RETCODE) on ATTACH reference is invalid and will be ignored.
Explanation:

OPTIONS(RETCODE) is not supported on ATTACH references.

IBM1293I E
WIDECHAR extent is reduced to maximum value.
Explanation:

The maximum length allowed for a WIDECHAR variable is 16383.

IBM1294I E
BIT extent is reduced to maximum value.
Explanation:

The maximum length allowed for a BIT variable is 32767.

IBM1295I E
Sole bound specified is less than 1. An upper bound of 1 is assumed.
Explanation:

The default lower bound is 1, but the upper bound must be greater than the lower bound.

 
 
    dcl x(-5) fixed bin;
 
IBM1296I E
The BYADDR option conflicts with the SYSTEM option.
Explanation:

The arguments passed to the MAIN procedure when SYSTEM(IMS) or SYSTEM(CICS) is in effect should not have the BYADDR attribute.

 
 
  *process system(ims);
   a: proc( x );
     dcl x ptr byaddr;
 
IBM1297I E
Source and target in BY NAME assignment have no matching base identifiers.
Explanation:

In a BY NAME, the source and target structures should have at least one matching base element identifier.

 
 
    dcl 1 a, 2 b, 2 c, 2 d;
    dcl 1 w, 2 x, 2 y, 2 z;
    a = w, by name;
 
IBM1298I E
Characters in B3 literals must be 0-7.
Explanation:

In a B3 literal, each character must be either 0-7.

IBM1299I E
CHARACTER extent is reduced to maximum value.
Explanation:

The maximum length allowed for a CHARACTER variable is 32767.

IBM1300I E
variable name is contextually declared as attribute.
Explanation:

This is an E-level message because RULES(NOLAXDCL) has been specified.

IBM1301I E
A DECIMAL exponent is required.
Explanation:

An E in a FLOAT constant must be followed by at least one decimal digit (optionally preceded by a sign).

IBM1302I E
The limit on the number of DEFAULT predicates in a block has already been reached. This and subsequent DEFAULT predicates in this block will be ignored.
Explanation:

Each block should contain no more than 31 DEFAULT predicates.

IBM1303I E
A second argument to the BUILTIN name built-in must be supplied for arrays with more than one dimension. A value of 1 is assumed.
Explanation:

The LBOUND, HBOUND, and DIMENSION built-in functions require two arguments when applied to arrays having more than one dimension.

 
 
    dcl a(5,10) fixed bin;
    do i = 1 to lbound(a);
 
IBM1304I E
Second argument to BUILTIN name built-in is not positive. A value of 1 is assumed.
Explanation:

The DIMENSION, HBOUND and LBOUND built-in functions require that the second argument be positive.

IBM1305I E
Second argument to BUILTIN name built-in is greater than the number of dimensions for the first argument. A value of dimension count is assumed.
Explanation:

The second argument to the LBOUND, HBOUND, and DIMENSION built-in functions must be no greater than the number of dimensions of their array arguments.

 
 
    dcl a(5,10) fixed bin;
    do i = 1 to lbound(a,3);
 
IBM1306I E
Repeated declaration of identifier is invalid and will be ignored.
Explanation:

Level 1 variable names must not be repeated in the same block.

 
 
    dcl a fixed bin, a float;
 
IBM1307I E
Duplicate specification of arithmetic precision. Subsequent specification ignored.
Explanation:

The precision attribute must be specified only once in a declare.

 
 
    dcl a fixed(15) bin(31);
 
IBM1308I E
Repeated declaration of identifier is invalid. The name will be replaced by an asterisk.
Explanation:

The variable names at any given sublevel within a structure or union must be unique.

 
 
    dcl 1 a, 2 b fixed, 2 b float;
 
IBM1309I E
Duplicate specification of attribute. Subsequent specification ignored.
Explanation:

Attributes like INITIAL must not be repeated for an element of a DECLARE statement.

 
 
    dcl a fixed init(0) bin init(2);
 
IBM1310I E
The attribute character conflicts with previous attributes and is ignored.
Explanation:

Attributes must be consistent.

 
 
     dcl a fixed real float;
 
IBM1311I E
EXTERNAL name contains no non-blank characters and is ignored.
Explanation:

The external name should contain some nonblank characters.

 
 
    dcl x external( ’  ’ );
 
IBM1312I E
WX literals should contain a multiple of 4 hex digits.
Explanation:

WX literals must represent unicode strings and hence must contain a multiple of 4 hex digits.

 
 
    x = ’00’wx;
 
IBM1314I E
ELSE clause outside of an open IF-THEN statement is ignored.
Explanation:

ELSE clauses are valid immediately after an IF-THEN statement.

 
 
    do; if a > b then; end; else a = 0;
 
IBM1315I E
END label matches a label on an open group, but that group label is subscripted.
Explanation:

END statements for groups with a subscripted label must have labels that are also subscripted.

 
 
    a(1): do;
      ...
    end a;
 
IBM1316I E
END label is not a label on any open group.
Explanation:

A Label on END statement must match a LABEL on an open BEGIN, DO, PACKAGE, PROCEDURE, or SELECT statement.

 
 
    a: do;
      ...
    end b;
 
IBM1317I E
An END statement may be missing after an OTHERWISE unit. One will be inserted.
Explanation:

After an OTHERWISE unit in a SELECT statement, only an END statement is valid.

 
 
    select;
      when ( ... )
        do;
        end;
      otherwise
        do;
        end;
    display( .... );
 
IBM1318I E
The ENVIRONMENT option option-name conflicts with preceding ENVIRONMENT options. This option will be ignored.
Explanation:

There was a conflict detected in the ENVIRONMENT options specification. In the example ENV(CONSECUTIVE INDEXED), the INDEXED option conflicts with the CONSECUTIVE option.

IBM1319I E
STRINGSIZE condition raised while evaluating expression. Result is truncated.
Explanation:

During the conversion of a user expression during the compilation, the target string was found to be shorter than the source, thus causing the STRINGSIZE condition to be raised.

IBM1320I E
STRINGRANGE condition raised while evaluating expression. Arguments are adjusted to fit.
Explanation:

If all the arguments in a SUBSTR reference are constants or restricted expressions, the reference will be evaluated at compile- time and the STRINGRANGE condition will occur if the arguments do not comply with the rules described for the SUBSTR built-in function.

 
 
    a = substr( ’abcdef’, 5, 4 );
 
IBM1321I E
LEAVE/ITERATE label matches a label on an open DO group, but that DO group label is subscripted.
Explanation:

LEAVE/ITERATE statements for groups with a subscripted label must have labels that are also subscripted.

 
 
    a(1): do;
      ...
      leave a;
 
IBM1322I E
LEAVE/ITERATE label is not a label on any open DO group in its containing block.
Explanation:

LEAVE/ITERATE must specify a label on an open DO loop in the same block as the LEAVE/ITERATE statement.

 
 
    a: do loop;
      begin;
        leave a;
 
IBM1323I E
ITERATE/LEAVE statement is invalid outside an open DO statement. The statement will be ignored.
Explanation:

ITERATE/LEAVE statements are valid only inside DO groups.

 
 
    a: begin;
      ...
      leave a;
      ...
    end a;
 
IBM1324I E
The name name occurs more than once in the EXPORTS clause.
Explanation:

Names in the EXPORTS clause of a package statement must be unique.

 
 
    a: package exports( a1, a2, a1 );
 
IBM1325I E
The name name occurs in the EXPORTS clause, but is not the name of any level-1 procedure.
Explanation:

Each name in the EXPORTS clause of a package statement must be the name of some level-1 procedure in that package.

 
 
    a: package exports( a1, a2, a3 );
 
IBM1326I E
Variables declared without a name must be structure members or followed by a substructure list.
Explanation:

An asterisk may be used only for structure or union names, or for members of structures or unions. An asterisk may not be used for a level-1 structure name that specifies the LIKE attribute.

 
 
    dcl * char(20) static init(’who can use me’);
 
IBM1327I E
The CHARACTER VARYING parameter to MAIN should be ASCII with the attribute NATIVE.
Explanation:

If the parameter is EBCDIC or has the attribute NONNATIVE, unpredictable results can occur.

IBM1328I E
The CHARACTER VARYING parameter to MAIN should be EBCDIC with the attribute BIGENDIAN.
Explanation:

If the parameter is ASCII or has the attribute LITTLEENDIAN, unpredictable results can occur. This message applies only to SYSTEM(MVS) etc.

IBM1330I E
The I in an iSUB token must be bigger than zero. A value of 1 is assumed.
Explanation:

The I in an iSUB token must represent a valid dimension number.

 
     dcl b(8) fixed bin def(0sub,1);
IBM1331I E
The I in an iSUB token must have no more than 2 digits. A value of 1 is assumed.
Explanation:

The I in an iSUB token must have only 1 or 2 digits.

 
     dcl b(8) fixed bin def(001sub,1);
IBM1332I E
The format-item format item requires an argument when used in GET statement. A value of 1 is assumed.
Explanation:

A width must be specified on A, B, and G format items when specified on a GET statement.

 
     get edit(name) (a);
IBM1333I E
Non-asterisk array bounds are not permitted in GENERIC descriptions.
Explanation:

All array bounds in generic descriptions must be asterisks.

 
 
    dcl x generic ( e1 when( (10) fixed ), ...
 
IBM1334I E
String lengths and area sizes are not permitted in GENERIC descriptions.
Explanation:

All string lengths and area sizes in generic descriptions must be asterisks.

 
 
    dcl x generic ( e1 when( char(10) ), ...
 
IBM1335I E
Entry description lists are not permitted in GENERIC descriptions.
Explanation:

Any ENTRY attribute in a generic description list must not be qualified with an entry description list.

 
 
    dcl x generic ( e1 when( entry( ptr ) ), ...
 
IBM1336I E
GRAPHIC extent is reduced to maximum value.
Explanation:

The maximum length allowed for a GRAPHIC variable is 16383.

IBM1337I E
GX literals should contain a multiple of 4 hex digits.
Explanation:

GX literals must represent graphic strings and hence must contain a multiple of 4 hex digits.

 
 
    x = ’00’gx;
 
IBM1338I E
Upper bound is less than lower bound. Bounds will be reversed.
Explanation:

A variable has been declared with an upper bound that is less than its lower bound. The upper and lower bounds will be swapped in order to correct this. For example, DECLARE x(3:1) will be changed to DECLARE x(1:3).

IBM1339I E
Identifier is too long. It will be collapsed to identifier.
Explanation:

The maximum length of an identifier is set by the NAME suboption of the LIMITS compiler option.

IBM1340I E
Argument number argument-number in ENTRY reference ENTRY name contains BIT data. NOMAP is assumed.
Explanation:

An argument containing BIT data has been found in a call to a COBOL routine. Mapping of such structures between PL/I and COBOL is not supported.

 
 
    dcl f ext entry options( cobol );
 
    dcl 1 a, 2 b bit(8), 2 c bit(8);
 
    call f( a );
 
IBM1341I E
Argument number argument-number in ENTRY reference ENTRY name is or contains an UNION. NOMAP is assumed.
Explanation:

An argument containing UNION data has been found in a call to a COBOL routine. Mapping of such structures between PL/I and COBOL is not supported.

 
 
    dcl f ext entry options( cobol );
 
    dcl 1 a union, 2 b char(4), 2 c fixed bin(31);
 
    call f( a );
 
IBM1342I E
Argument number argument-number in ENTRY reference ENTRY name contains non-constant extents. NOMAP is assumed.
Explanation:

An argument containing non-constant extents has been found in a call to a COBOL routine. Mapping of such structures between PL/I and COBOL is not supported.

 
 
    dcl f ext entry options( cobol );
 
    dcl n static fixed bin init(17);
 
    dcl 1 a, 2 b char(n), 2 c fixed bin(31);
 
    call f( a );
 
IBM1343I E
nomap-suboption is invalid as a suboption of option.
Explanation:

The suboption should be specified as ARGn where "n" is an integer greater than 0.

 
 
    dcl f ext entry options( cobol nomap(arg0) );
 
IBM1344I E
NOMAP specifications are valid only for ILC routines.
Explanation:

NOMAP, NOMAPIN and NOMAPOUT are valid only for COBOL, FORTRAN and ASM Procedures and Entrys.

IBM1345I E
Initial level number in a structure is not 1.
Explanation:

The level-1 DECLARE statement may be missing.

 
 
    dcl
      2 a,
        3 b,
        3 c,
 
IBM1346I E
INIT expression should be enclosed in parentheses.
Explanation:

This is required to avoid ambiguities. For example, it is unclear whether all of the elements should be initialized with the value 4 or if the first element should be initialized with the value 9.

 
 
    dcl a(5) fixed bin init( (5)+4 );
 
IBM1347I E
B assumed to complete iSUB.
Explanation:

There is no language element of the form 1su.

 
 
    dcl a(10) def b(1su, 1sub );
 
IBM1348I E
Digit in BINARY constant is not zero or one.
Explanation:

In a BINARY constant, each digit must be a zero or one.

IBM1349I E
Characters in BIT literals must be 0 or 1.
Explanation:

In a BIT literal, each character must be either zero or one.

IBM1350I E
Character with decimal value n does not belong to the PL/I character set. It will be ignored.
Explanation:

The indicated character is not part of the PL/I character set. This can occur if a program containing NOT or OR symbols is ported from another machine and those symbols are translated to a character that is not part of the PL/I character set. Using the NOT and OR compiler options can help avoid this problem.

IBM1351I E
Characters in hex literals must be 0-9 or A-F.
Explanation:

In a hex literal, each character must be either 0-9 or A-F.

IBM1352I E
The statement element character is invalid. The statement will be ignored.
Explanation:

The statement entered could not be parsed because the specified element is invalid.

IBM1353I E
Use of underscore as initial character in an identifier accepted although invalid under LANGLVL(SAA).
Explanation:

Under LANGLVL(SAA), identifiers must start with an alphabetic character or with one of the extralingual characters. They may not start with an underscore. Under LANGLVL(SAA2), identifiers may start with an underscore, although names starting with _IBM are reserved for use by IBM.

IBM1354I E
Multiple argument lists are valid only with the last identifier in a reference.
Explanation:

A reference of the form x(1)(2).y.z is invalid.

IBM1355I E
Empty argument lists are valid only with the last identifier in a reference.
Explanation:

A reference of the form x().y.z is invalid.

IBM1356I E
Character with decimal value n does not belong to the PL/I character set. It is assumed to be an OR symbol.
Explanation:

The indicated character is not part of the PL/I character set, but was immediately followed by the same character. This can occur if a program containing an OR symbol is ported from another machine and this symbol is translated to a character that is not part of the PL/I character set. Using the OR compiler option can help avoid this problem.

IBM1357I E
Character with decimal value n does not belong to the PL/I character set. It is assumed to be a NOT symbol.
Explanation:

The indicated character is not part of the PL/I character set, but was immediately followed by an =, < or > symbol. This can occur if a program containing a NOT symbol is ported from another machine and this symbol is translated to a character that is not part of the PL/I character set. Using the NOT compiler option can help avoid this problem.

IBM1358I E
The scale factor specified in BUILTIN name built-in with a floating-point argument must be positive. It will be changed to 1.
Explanation:

This applies to the ROUND built-in function. The non-positive value will be changed to 1.

 
 
    dcl x float bin(53);
    x = round( x, -1 );
 
IBM1359I E
Names in RANGE(identifier:identifier) are not in ascending order. Order is reversed.
Explanation:

The names must be in ascending order.

 
 
    default range( h : a ) fixed bin;
 
IBM1360I E
The name identifier has already been defined as a FORMAT constant.
Explanation:

The name of a FORMAT constant cannot be used as the name of a LABEL constant as well.

 
 
    f(1): format( a, x(2), a );
 
    f(2): ;
 
IBM1361I E
The name identifier has already been defined as a LABEL constant.
Explanation:

The name of a LABEL constant cannot be also used as the name of a FORMAT constant.

 
 
    f(1): ;
 
    f(2): format( a, x(2), a );
 
IBM1362I E
The label label-name has already been declared. The explicit declaration of the label will not be accepted.
Explanation:

Declarations for label constant arrays are not permitted.

 
 
    dcl a(10) label variable;
 
    a(1): ...
    a(2): ...
 
IBM1363I E
Structure level greater than 255 specified. It will be replaced by 255.
Explanation:

The maximum structure level supported is 255.

 
 
    dcl
      1 a,
        256 b,
        2 c,
 
IBM1364I E
Elements with level numbers greater than 1 follow an element without a level number. A level number of 1 is assumed.
Explanation:

A structure level is probably missing.

 
 
    dcl
        a,
        2 b,
        2 c,
 
IBM1365I E
Statement type resolution requires too many lexical units to be examined. The statement will be ignored.
Explanation:

To determine if a statement is an assignment or another PL/I statement, many elements of the statement may need to be examined. If too many have to be examined, the compiler will flag the statement as in error. For instance, the following statement could be a DECLARE until the equal sign is encountered by the lexer.

 
 
    dcl ( a, b, c ) = d;
 
IBM1366I E
Level number following LIKE specification is greater than than the level number for the LIKE specification. LIKE attribute will be ignored.
Explanation:

LIKE cannot be specified on a parent structure or union.

 
 
    dcl
      1 a like x,
        2 b,
        2 c,
 
IBM1367I E
Statements inside a SELECT must be preceded by a WHEN or an OTHERWISE clause.
Explanation:

A WHEN or OTHERWISE may be missing.

 
 
    select;
      i = i + 1;
      when ( a > 0 )
        ...
 
IBM1368I E
The attribute character is invalid if it is not followed by an element with a greater logical level.
Explanation:

The named attribute is valid only on parent structures.

 
 
    dcl
      1 a,
        2 b union,
          2 c1  fixed bin(31),
          2 c2  float bin(21),
        ...
 
IBM1369I E
MAIN has already been specified in the PACKAGE.
Explanation:

OPTIONS(MAIN) may be specified for only one PROCEDURE in a PACKAGE. All but the first specification will be ignored.

IBM1370I E
Extent expression is negative. It will be replaced by the constant 1.
Explanation:

Extents must be positive.

 
 
    dcl x char(-10);
 
IBM1371I E
Structure element identifier is not dot qualified.
Explanation:

Under the option RULES(NOLAXQUAL), all structure elements should be qualified with the name of at least one of their parents.

IBM1372I E
EXTERNAL specified on internal entry point.
Explanation:

The EXTERNAL attribute is valid only on external procedures and entrys: for example, in a non-package, only on the outermost procedure and entry statements contained in it, and in a package, only on the procedures and entrys listed in the EXPORTS clause of the PACKAGE statement.

 
 
    a: proc;
      b: proc ext(’_B’);
 
IBM1373I E
Variable variable name is implicitly declared.
Explanation:

Under the RULES(NOLAXDCL) option, all variables must be declared except for contextual declarations of built-in functions, SYSPRINT and SYSIN.

IBM1374I E
Contextual attributes conflicting with PARAMETER will not be applied to variable name.
Explanation:

Only those contextual attributes that can be applied to a parameter will be applied. For example, CONSTANT and EXTERNAL, which apply to contextual file declarations, will not be applied to file parameters.

 
 
    a: proc( f );
 
      open file( f );
 
IBM1375I E
The DEFINED variable variable name does not fit into its base variable.
Explanation:

The number of bits, characters or graphics needed for a DEFINED variable must be no more than in the base variable.

 
 
    dcl a char(10);
 
    dcl b char(5) defined ( a ) pos( 8 );
 
IBM1376I E
Factoring of level numbers into declaration lists containing level numbers is invalid. The level numbers in the declaration list will be ignored.
Explanation:

Only attributes can be factored into declaration lists.

 
 
    dcl 1 a, 2 ( b, 3 c, 3 d ) fixed;
 
IBM1377I E
A scale factor has been specified as an argument to the BUILTIN name built-in, but the result of that function has type FLOAT. The scale factor will be ignored.
Explanation:

Scale factors are valid only for FIXED values.

 
 
    x = binary(1e0,4,2);
 
IBM1378I E
An arguments list or subscripts list has been provided for a GENERIC entry reference. It will be ignored.
Explanation:

GENERIC entry references are not allowed to contain an arguments or subscripts list.

 
 
    dcl t generic( sub1(10) when((*)),
                   sub2     when((*,*)) );
 
IBM1379I E
Locator qualifier for GENERIC reference is ignored.
Explanation:

GENERIC references cannot be locator-qualified.

 
 
    dcl x generic ( ... );
 
    call p->x;
 
IBM1380I E
Target structure in assignment contains no elements with the ASSIGNABLE attribute. No assignments will be generated.
Explanation:

In an assignment to a structure, some element of the structure must have the assignable attribute.

 
 
    dcl
      1 a based,
        2 nonasgn fixed bin,
        2 nonasgn fixed bin;
 
    p->a = 0;
 
IBM1381I E
DEFINED base for a BIT structure should be aligned.
Explanation:

If a BIT structure (or union) is defined on a variable that is not aligned on a byte boundary, unpredictable results may occur. This is especially true if a substructure of the DEFINED variable is passed to another routine.

IBM1382I E
INITIAL attribute is invalid for STATIC FORMAT variables. Storage class is changed to AUTOMATIC.
Explanation:

FORMAT variables require block activation information; they cannot be initialized at compile-time. If the variable were a member of a structure, the storage class would not be changed to AUTOMATIC, and a severe message would be issued instead.

IBM1383I E
Labels on keyword statements are invalid and ignored.
Explanation:

Labels are not permitted on DECLARE, DEFAULT, and DEFINE statements or on WHEN and OTHERWISE clauses.

IBM1384I E
message
Explanation:

This message is used to report back end error messages.

IBM1385I E
Invalid DEFINED - string overlay defining attempted.
Explanation:

The base variable in the DEFINED attribute must consist of UNALIGNED, NONVARYING string variables of the same string type as the DEFINED variable.

IBM1386I E
DEFINED base for a BIT variable should not be subscripted.
Explanation:

When one bit variable is defined on a second (the base), the base may be an array, but it must not be subscripted.

 
 
    dcl a(20) bit(8) unaligned;
    dcl b bit(8) defined( a(3) );
 
IBM1387I E
The NODESCRIPTOR attribute is invalid when any parameters have * extents. The NODESCRIPTOR attribute will be ignored.
Explanation:

A parameter can have * extents only if a descriptor is also passed. The NODESCRIPTOR attribute will be ignored, and descriptors will be assumed to have been passed for all array, structure and string arguments.

 
 
    a: proc( x ) options(nodescriptor);
 
      dcl x char(*);
 
IBM1388I E
The NODESCRIPTOR attribute is invalid when any parameters have the NONCONNECTED attribute.
Explanation:

A parameter can have the NONCONNECTED attribute only if a descriptor is also passed.

 
 
    a: proc( x ) options(nodescriptor);
 
      dcl x(20) fixed bin nonconnected;
 
IBM1389I E
The identifier identifier is not the name of a built-in function. The BUILTIN attribute will be ignored.
Explanation:

The BUILTIN attribute can be applied only to identifiers that are the names of built-in functions or subroutines.

IBM1390I E
note
Explanation:

This message is used by %NOTE statements with a return code of 8.

IBM1391I E
End-of-source has been encountered after an unmatched comment marker.
Explanation:

An end-of-comment marker is probably missing.

IBM1392I E
End-of-source has been encountered after an unmatched quote.
Explanation:

A closing quote is probably missing.

IBM1393I E
Item in OPTIONS list conflicts with other attributes in the declaration. option-name is ignored.
Explanation:

The indicated element of the options list is invalid.

 
 
    dcl a file options( assembler );
 
IBM1394I E
Item in OPTIONS list is invalid for BEGIN blocks. option-name is ignored.
Explanation:

The indicated element of the options list is invalid for BEGIN blocks (although it may be valid for PROCEDUREs).

 
 
    begin options( assembler );
 
IBM1395I E
Item in OPTIONS list is invalid for PACKAGEs. option-name is ignored.
Explanation:

The indicated element of the options list is invalid for PACKAGEs (although it may be valid for PROCEDUREs).

 
 
    a: package exports(*) options( assembler );
 
IBM1396I E
Item in OPTIONS list is invalid for PROCEDUREs. option-name is ignored.
Explanation:

The indicated element of the options list is invalid for PROCEDUREs (although it may be valid for ENTRYs).

 
 
    a: procedure options( inter );
 
IBM1397I E
Item in OPTIONS list is invalid for nested PROCEDUREs. option-name is ignored.
Explanation:

The indicated element of the options list is invalid for nested PROCEDUREs (although it may be valid for PROCEDUREs).

 
 
    a: proc;
      b: proc options( main );
 
IBM1398I E
Invalid item in OPTIONS list. option-name is ignored.
Explanation:

The indicated element of the options list is not a supported option in any statement or declaration.

 
 
    a: proc options( unknown );
 
IBM1399I E
Item in OPTIONS list is invalid for ENTRY statements. option-name is ignored.
Explanation:

The indicated element of the options list is invalid for ENTRY statements (although it may be valid for PROCEDUREs).

 
 
    a: entry options( chargraphic );
 
IBM1400I E
Item in OPTIONS list conflicts with preceding items. option-name is ignored.
Explanation:

The elements of the options list must be consistent, unlike in the example where BYVALUE and BYADDR conflict.

 
 
    a: proc options( byvalue byaddr );
 
IBM1401I E
Parameter attributes have been specified for a variable that is not a parameter. The parameter attributes are ignored.
Explanation:

Parameter attributes, such as BYVALUE or CONNECTED, may be specified only for parameters.

 
 
    a: proc;
      dcl x byvalue ptr;
 
IBM1402I E
Constant in POSITION attribute is less than 1.
Explanation:

The POSITION attribute must specify a positive value.

 
 
    dcl a def b pos(-10);
 
IBM1403I E
The end of the source was reached before the logical end of the program. Null statements and END statements will be inserted as necessary to complete the program.
Explanation:

The source should contain END statements for all PACKAGEs, PROCEDUREs, BEGIN blocks, DO groups, and SELECT statements, as well as statements for all IF-THEN and ELSE clauses.

IBM1404I E
The procedure name proc-name has already been declared. The explicit declaration of the procedure name will not be accepted.
Explanation:

Declarations for internal procedures are not permitted.

 
 
    a: proc;
      dcl b entry options(byvalue);
      b: proc;
 
IBM1405I E
Only one description is allowed in a returns descriptor.
Explanation:

A function can return only one value.

 
 
    dcl b entry returns( ptr, ptr );
 
IBM1406I E
The product of the repetition factor repetition-factor and the length of the constant string to which it is applied is greater than the maximum length allowed for a constant. The repetition factor will be ignored.
Explanation:

The string represented by a repetition factor applied to another string must conform to the same limits imposed on strings without repetition factors.

 
 
    a = (32767) ’abc’;
 
IBM1407I E
Scale factor is bigger than 127. It will be replaced by 127.
Explanation:

Scale factors must lie between -128 and 127 inclusive.

IBM1408I E
Scale factor is less than -128. It will be replaced by -128.
Explanation:

Scale factors must lie between -128 and 127 inclusive.

IBM1409I E
A SELECT statement may be missing. A SELECT statement, without an expression, will be inserted.
Explanation:

A WHEN or OTHERWISE clause has been found outside of a SELECT statement.

IBM1410I E
Semicolon inserted after ELSE keyword.
Explanation:

An END statement enclosing a statement such as DO or SELECT has been found before the statement required after ELSE.

 
 
    do;
      if a > b then
        ...
      else
    end;
 
IBM1411I E
Semicolon inserted after ON clause.
Explanation:

An END statement enclosing a statement such as DO or SELECT has been found before the statement required after ON condition.

 
 
    do;
      ...
      on zdiv
    end;
 
IBM1412I E
Semicolon inserted after OTHERWISE keyword.
Explanation:

An END statement may be misplaced or a semicolon may be missing.

IBM1413I E
Semicolon inserted after THEN keyword.
Explanation:

An END statement may be misplaced or a semicolon may be missing.

IBM1414I E
Semicolon inserted after WHEN clause.
Explanation:

An END statement may be misplaced or a semicolon may be missing.

IBM1415I E
Source file does not end with the logical end of the program.
Explanation:

The source file contains statements after the END statement that closed the first PACKAGE or PROCEDURE. These statements will be ignored, but their presence may indicate a programming error.

IBM1416I E
Subscripts have been specified for the variable variable name, but it is not an array variable.
Explanation:

Subscripts can be specified only for elements of an array.

IBM1417I E
Second argument in SUBSTR reference is less than 1. It will be replaced by 1.
Explanation:

Otherwise the STRINGRANGE condition would be raised.

IBM1418I E
Second argument in SUBSTR reference is too big. It will be trimmed to fit.
Explanation:

Otherwise the STRINGRANGE condition would be raised.

IBM1419I E
Third argument in SUBSTR reference is less than 0. It will be replaced by 0.
Explanation:

Otherwise the STRINGRANGE condition would be raised.

IBM1420I E
The factor in K/M constant is too large and is replaced by maximum factor.
Explanation:

The maximum K constant is 2097151K, and the maximum M constant is 2047M.

IBM1421I E
More than 15 dimensions have been specified. Excess will be ignored.
Explanation:

The maximum number of dimensions allowed for a variable, including all inherited dimensions, is 15.

IBM1422I E
Maximum of 500 LIKE attributes per block exceeded.
Explanation:

A block should contain no more than 500 LIKE references. Under LANGLVL(SAA2), there is no limit.

IBM1423I E
UNALIGNED attribute conflicts with AREA attribute.
Explanation:

All AREA variables must be ALIGNED.

IBM1424I E
End of comment marker found when there are no open comments. Marker will be ignored.
Explanation:

An */ was found when there was no open comment.

IBM1425I E
There is no compiler directive directive. Input up to the next semicolon will be ignored.
Explanation:

See the :cit.Language Reference Manual:ecit. for the list of supported compiler directives.

IBM1426I E
Structure level of 0 replaced by 1.
Explanation:

Structure level numbers must be positive.

IBM1427I E
Numeric precision of 0 replaced by 1.
Explanation:

Numeric precisions must be positive.

IBM1428I E
X literals should contain a multiple of 2 hex digits.
Explanation:

An X literal may not contain an odd number of digits.

IBM1429I E
INITIAL attribute for REFER object variable name is invalid.
Explanation:

In DCL 1 a BASED, 2 b FIXED BIN INIT(3), 2 c( n REFER(b)), the initial clause for ’b’ is invalid and will be ignored.

IBM1430I E
UNSIGNED attribute for type type type type name conflicts with negative INITIAL values and is ignored.
Explanation:

If an ORDINAL type is declared with the UNSIGNED attribute, any INITIAL values specified must be nonnegative.

IBM1431I E
PRECISION specified for type type type type name is too small to cover its INITIAL values and is adjusted to fit.
Explanation:

An ORDINAL type must have a precision larger enough to cover the range of values defined for it.

 
 
   define ordinal
     colors
       ( red      init(0),
         orange   init(256)
         yellow   init(512) ) unsigned prec(8);
 
IBM1432I E
The type type type type name is already defined. The redefinition is ignored.
Explanation:

An ORDINAL type may be defined only once in any block.

IBM1433I E
The name name occurs more than once in the RESERVES clause.
Explanation:

Names in the RESERVES clause of a package statement must be unique.

 
 
    a: package reserves( a1, a2, a1 );
 
IBM1434I E
The name name occurs in the RESERVES clause, but is not the name of any level-1 STATIC EXTERNAL variable.
Explanation:

Each name in the RESERVES clause of a package statement must be the name of some level-1 static external variable in that package.

 
 
    a: package reserves( a1, a2, a3 );
 
IBM1435I E
A precision value less than 1 has been specified as an argument to the BUILTIN name built-in. It will be replaced by 15.
Explanation:

Precision values must be positive.

 
 
    middle = divide( todo, 2, 0 );
 
IBM1436I E
The scale factor specified as an argument to the BUILTIN name built-in is out of the valid range. It will be replaced by the nearest valid value.
Explanation:

Scale factors must be between -128 and 127 inclusive.

 
 
    f = fixed( i, 15, 130 );
 
IBM1437I E
The second argument to the BUILTIN name built-in is greater than the maximum FIXED BINARY precision. It will be replaced by the maximum value.
Explanation:

The maximum FIXED BINARY precision supported allowed depends on the FIXEDBIN suboption of the LIMITS option.

 
 
    i = signed( n, 63 );
 
IBM1438I E
Excess arguments for ENTRY ENTRY name ignored.
Explanation:

More arguments were specified in an ENTRY reference than were defined as parameters in that ENTRY’s declaration.

 
 
    dcl e entry( fixed bin );
    call e( 1, 2 );
 
IBM1439I E
Excess arguments for BUILTIN name built-in ignored.
Explanation:

More arguments were specified for the indicated built-in function than are supported by that built-in function.

 
 
    i = acos( j, k );
 
IBM1441I E
ENTRY/RETURNS description lists for comparands do not match.
Explanation:

In a comparison of two ENTRY variables or constants, the ENTRY and RETURNS description lists should match. The linkages must also match.

 
 
    dcl e1 entry( fixed ), e2 entry( float );
 
    if e1 = e2 then
 
IBM1442I E
The ENTRY/RETURNS description lists in the ENTRY to be assigned to target variable do not match those of the target variable.
Explanation:

In an assignment of an ENTRY variable or constant, the ENTRY and RETURNS description lists for the source should match those of the target. The linkages must also match.

 
 
    dcl e1 variable entry( fixed ),
        e2 entry( float );
 
    e1 = e2;
 
IBM1443I E
An ENTRY/RETURNS description list in an ENTRY in the INITIAL list for target variable do not match those of the target variable.
Explanation:

When initializing an ENTRY variable or constant, the ENTRY and RETURNS description lists for the source should match those of the target. The linkages must also match.

 
 
    dcl e1 variable entry( fixed );
    dcl e2 variable entry( float ) init( e1 );
 
IBM1444I E
The ENTRY/RETURNS description lists in the RETURN statement do not match those in the corresponding RETURNS attribute
Explanation:

When a function returns an ENTRY variable or constant, the ENTRY and RETURNS description lists in the returned ENTRY reference should match those in the containing procedure’s RETURNS option. The linkages must also match.

 
 
   a: proc returns( entry( float ) );
 
    dcl e1 entry( fixed );
 
    return( e1 );
 
IBM1445I E
The ENTRY/RETURNS description lists for argument number argument-number in entry reference entry name do not match those in the corresponding parameter.
Explanation:

This message also occurs if the linkages do not match.

 
 
    dcl a entry( entry( float ) );
 
    dcl e1 entry( fixed );
 
    call a( e1 );
 
IBM1446I E
Third argument in SUBSTR reference is too big. It will be trimmed to fit.
Explanation:

Otherwise the STRINGRANGE condition would be raised.

IBM1447I E
Literals with an X prefix are valid only in EXEC SQL statements.
Explanation:

In PL/I statements, hex literals should be specified with an X suffix.

IBM1448I E
Use of nonconstant extents in BASED variables without REFER accepted although invalid under LANGLVL(SAA).
Explanation:

In the SAA level-1 language definition, extents in BASED variables must all be constant except where the REFER option is used. The following would be invalid

 
 
    dcl x based char(n);
 
IBM1449I E
Use of type function accepted although invalid under LANGLVL(SAA).
Explanation:

Type functions are not part of the SAA level-1 language.

IBM1450I E
keyword keyword accepted although invalid under LANGLVL(SAA).
Explanation:

The indicated keyword (UNSIGNED in the example below) is not defined in the SAA level-1 language.

 
 
    dcl x fixed bin unsigned;
 
IBM1451I E
Use of S, D and Q constants accepted although invalid under LANGLVL(SAA).
Explanation:

The definition of the SAA level-1 language does not include S, D, and Q floating-point constants.

IBM1452I E
Use of underscores in constants accepted although invalid under LANGLVL(SAA).
Explanation:

The definition of the SAA level-1 language does not permit using underscores in numeric and hex constants.

IBM1453I E
Use of asterisks for names in declares accepted although invalid under LANGLVL(SAA).
Explanation:

The definition of the SAA level-1 language does not permit using asterisks for structure element names.

IBM1454I E
Use of XN and XU constants accepted although invalid under LANGLVL(SAA).
Explanation:

The definition of the SAA level-1 language does not include XN and XU constants.

IBM1455I E
Use of arguments with BUILTIN name built-in accepted although invalid under LANGLVL(SAA).
Explanation:

Under LANGLVL(SAA), the DATETIME built-in function cannot have any arguments.

 
 
     s = datetime(’DDMMYYYY’);
 
IBM1456I E
Use of 3 arguments with BUILTIN name built-in accepted although invalid under LANGLVL(SAA).
Explanation:

Under LANGLVL(SAA), the VERIFY and INDEX built-in functions are supposed to have exactly 2 arguments.

 
 
     i = verify( s, j, k );
 
IBM1457I E
Use of 1 argument with BUILTIN name built-in accepted although invalid under LANGLVL(SAA).
Explanation:

Under LANGLVL(SAA), the DIM, LBOUND and HBOUND built-in functions are supposed to have 2 arguments.

 
 
     i = dim( a );
 
IBM1458I E
GOTO is not allowed under RULES(NOGOTO).
Explanation:

Under RULES(NOGOTO), there should be no GOTO statements in your source program.

IBM1459I E
Uninitialized AUTOMATIC variables in a block should not be used in the prologue of that block.
Explanation:

The AUTOMATIC variables in a block may be used in the declare statements and the executable statements of any contained block, but in the block in which they are declared, they should be used only in the executable statements.

 
 
    dcl x fixed bin(15) automatic;
    dcl y(x) fixed bin(15) automatic;
 
IBM1460I E
Under RULES(ANS), nonzero scale factors are not permitted in declarations of FIXED BIN. Declared scale factor will be ignored.
Explanation:

RULES(IBM) allows scaled FIXED BIN, but RULES(ANS) supports it only for FIXED DECIMAL. RULES(ANS) will ignore the scale factors in the following declares

 
 
    dcl x fixed bin(31,16);
    dcl y entry( fixed bin(31,16) );
 
IBM1461I E
Under RULES(ANS), nonzero scale factors are not permitted when the result of BUILTIN name has the attributes FIXED BIN. Specified scale factor will be ignored.
Explanation:

RULES(IBM) allows scaled FIXED BIN, but RULES(ANS) supports it only for FIXED DECIMAL. RULES(ANS) will ignore the scale factors in the following built-ins

 
 
    dcl (x,y) fixed bin(15,0);
    put list( add(x,y,31,2) );
    put list( bin(x,31,2) );
    put list( prec(x,31,2) );
 
IBM1462I E
Expression in comparison interpreted with DATE attribute.
Explanation:

In a comparison, if one comparand has the DATE attribute, the other should also. If the non-date is an expression that could have a value that is valid for the date pattern, it will be viewed as if it had the same DATE attribute as the date comparand.

IBM1463I E
Operand with DATE attribute is invalid except in compare or assign. DATE attribute will be ignored.
Explanation:

Comparisons are the only infix operations where operands with the DATE attribute may be used. If they are used in any other operation, the DATE attribute will be ignored. So, in the following code, the addition will be flagged and the DATE attribute ignored.

 
 
    dcl x char(5) date(’YYDDD’);
 
    put list( x + 1 );
 
IBM1464I E
DATE attribute ignored in comparison with non-date expression.
Explanation:

In a comparison, if one comparand has the DATE attribute, the other should also. If the non-date is an expression that could not have a value that is not valid for the date pattern, the DATE attribute will be ignored.

IBM1465I E
Source in assignment has the DATE attribute, but target variable does not. The DATE attribute will be ignored.
Explanation:

If the target in an assignment has the DATE attribute, the source should also. If the target is a pseudovariable, message 1466 is issued instead.

 
 
    dcl x char(6);
    x = date();
 
IBM1466I E
Source in assignment has the DATE attribute, but target does not. The DATE attribute will be ignored.
Explanation:

If the source in an assignment has the DATE attribute, the target should also.

IBM1467I E
Source in INITIAL clause for variable name has the DATE attribute but the target does not. The DATE attribute will be ignored.
Explanation:

If an INITIAL expression has the DATE attribute, the target should also.

IBM1468I E
Argument number argument-number in entry reference entry name has the DATE attribute but the corresponding parameter does not. The DATE attribute will be ignored.
Explanation:

The argument and parameter should match, unlike in the example below

 
 
    dcl x entry( char(6) );
    call x( date() );
 
IBM1469I E
Source in RETURN statement has the DATE attribute, but the corresponding RETURNS option does not. The DATE attribute will be ignored.
Explanation:

The attributes of the RETURNed expression and in the RETURNS option should match, unlike in the example below

 
 
    x: proc returns( char(6) );
       ...
       return( date() );
 
IBM1470I E
An ID option must be specified for the INCLUDE preprocessor.
Explanation:

No other options are valid for the INCLUDE preprocessor.

IBM1471I E
The ID option specified for the INCLUDE preprocessor is invalid.
Explanation:

The INCLUDE preprocessor ID option must have one suboption consisting of a string specifying the INCLUDE directive.

IBM1472I E
A closing right parenthesis is missing from the ID option specified for the INCLUDE preprocessor.
Explanation:

The suboption specified for the INCLUDE preprocessor ID option must be closed with a right parenthesis.

IBM1473I E
The syntax of the preprocessor INCLUDE directive is incorrect.
Explanation:

A statement that starts with the preprocessor INCLUDE directive specified in that preprocessor’s ID option must be followed by a name and, optionally, a semicolon.

IBM1474I E
Source in assignment does not have the DATE attribute, but target variable does. The DATE attribute will be ignored.
Explanation:

If the target in an assignment has the DATE attribute, the source should also. If the target is a pseudovariable, message 1475 is issued instead.

 
 
    dcl x char(6) date(’YYMMDD’);
    x = ’’;
 
IBM1475I E
Target in assignment has the DATE attribute, but source does not. The DATE attribute will be ignored.
Explanation:

If the target in an assignment has the DATE attribute, the source should also.

IBM1476I E
Source in INITIAL clause for variable name does not have the DATE attribute but the target does. The DATE attribute will be ignored.
Explanation:

If a variable has the DATE attribute, then any INITIAL value for it should also.

IBM1477I E
Argument number argument-number in entry reference entry name does not have the DATE attribute but the corresponding parameter does. The DATE attribute will be ignored.
Explanation:

The argument and parameter should match, unlike in the example below

 
 
    dcl x entry( char(6) date(’YYMMDD’) );
    call x( ’’ );
 
IBM1478I E
Source in RETURN statement does not have the DATE attribute, but the corresponding RETURNS option does. The DATE attribute will be ignored.
Explanation:

The attributes of the RETURNed expression and in the RETURNS option should match, unlike in the example below

 
 
    x: proc returns( char(6) date(’YYMMDD’) );
       ...
       return( ’’ );
 
IBM1480I E
Multiple closure of groups is not allowed under RULES(NOMULTICLOSE).
Explanation:

Under RULES(NOMULTICLOSE), there should be no multiple closure of groups in your source program.

IBM1481I E
BYNAME assignment statements are not allowed under RULES(NOBYNAME).
Explanation:

Under RULES(NOBYNAME), there should be no BYNAME assignment statements in your source program.

IBM1482I E
The variable variable name is declared without any data attributes.
Explanation:

It will be given the default attributes, but this may be because of an error in the declare. For instance, in the following example, parentheses may be missing. Under RULES(LAXDCL), this is a W-level message.

 
 
   dcl a, b fixed bin;
 
IBM1483I E
The structure member variable name is declared without any data attributes. A level number may be incorrect.
Explanation:

It will be given the default attributes, but this may be because of an error in the declare. For instance, in the following example, the level number on c and d should probably be 3. Under RULES(LAXDCL), this is a W-level message.

 
 
   dcl a, b fixed bin;
     1 a,
       2 b,
         2 c,
         2 d;
 
IBM1484I E
An unnamed structure member is declared without any data attributes. A level number may be incorrect.
Explanation:

It will be given the default attributes, but this may be because of an error in the declare. For instance, in the following example, the level number on c and d should probably be 3. Under RULES(LAXDCL), this is a W-level message.

 
 
   dcl a, b fixed bin;
     1 a,
       2 *,
         2 c,
         2 d;
 
IBM2400I E
Compiler backend issued error messages to STDOUT.
Explanation:

Look in STDOUT to see the message issued by the compiler backend.

IBM2401I E
Missing character assumed before character. DECLARE and other nonexecutable statements should not have labels.
Explanation:

The indicated character is missing and has been inserted by the parser in order to correct your source. Under RULES(LAXPUNC), a message with the same text, but lesser severity would be issued

 
 
     xx: dcl test fixed bin;
 
IBM2402I E
variable name is declared as BASED on the ADDR of variable name, but variable name requires more storage than variable name.
Explanation:

The amount of storage needed for a BASED variable must be no more than provided by its base variable.

 
 
    dcl a char(10);
 
    dcl b char(5) based(addr(a));
 
IBM2403I E
PROCESS statements are not permitted under the NOPROCESS option.
Explanation:

When the NOPROCESS option is in effect, the source should contain no PROCESS statements.

IBM2404I E
variable name is declared as BASED on the ADDR of variable name, but variable name requires more storage than remains in the enclosing level 1 structure variable name after the location of variable name.
Explanation:

The amount of storage needed for a BASED variable must be no more than provided by its base variable.

 
 
    dcl 1 a, 2 a1 char(10), 2 a2 char(10);
 
    dcl b char(15) based(addr(a2));
 
IBM2405I E
Even decimal precisions are not allowed under RULES(NOEVENDEC).
Explanation:

Under RULES(NOEVENDEC), there should be no FIXED DECIMAL data declared with an even precision.

 
 
    dcl a fixed dec(10);
 
IBM2406I E
Precision outside VALUE clause will be ignored.
Explanation:

In DEFAULT statements, numeric precisions should be specified only inside VALUE clauses.

 
 
    dft range(*) fixed bin(31);
 
IBM2407I E
Length outside VALUE clause will be ignored.
Explanation:

In DEFAULT statements, lengths of strings should be specified only inside VALUE clauses.

 
 
    dft range(*) bit(8);
 
IBM2408I E
AREA size outside VALUE clause will be ignored.
Explanation:

In DEFAULT statements, sizes of AREAs should be specified only inside VALUE clauses.

 
 
    dft range(*) area(10000);
 
IBM2409I E
RETURN statement without an expression is invalid inside a subprocedure that specified the RETURNS attribute.
Explanation:

All RETURN statements inside functions must specify a value to be returned.

 
 
    a: proc returns( fixed bin );
 
      return;
 
IBM2410I E
Function function name contains no valid RETURN statement.
Explanation:

Functions must contain at least one RETURN statement.

IBM2411I E
STRINGOFGRAPHIC( CHARACTER ) option is ignored because argument to STRING built-in function is possibly not contiguous.
Explanation:

The STRINGOFGRAPHIC( CHARACTER ) option will be ignored if the argument contains any elements that are VARYING or if the argument is a NONCONNECTED slice of an array.

IBM2412I E
Procedure has no RETURNS attribute, but contains a RETURN statement. A RETURNS attribute will be assumed.
Explanation:

If a procedure contains a RETURN statement, it should have the RETURNS attribute specified on its PROCEDURE statement.

 
 
    a: proc;
      return( 0 );
    end;
 
IBM2413I E
The attribute attribute should be specified only on parameters and descriptors.
Explanation:

Attributes must be consistent.

 
 
     dcl a fixed based connected;
 
IBM2414I E
The option option conflicts with the option option. The IBM default of option will be used instead.
Explanation:

The specified options conflict and cannot be used together. On ASCII systems, the compiler will produce this message if you specify the GRAPHIC and EBCDIC options. Conversely, on EBCDIC systems, the compiler will produce this message if you specify the GRAPHIC and ASCII options.

IBM2415I E
Without APAR number, compiler would generate incorrect code for this statement.
Explanation:

The indicated APAR will fix a compiler problem with this statement.

IBM2416I E
The SEPARATE suboption of TEST is not supported when the LINEDIR option is in effect.
Explanation:

When the LINEDIR option is in effect, only the NOSEPARATE suboption of the TEST option is supported.

IBM2417I E
In FETCHABLE code compiled with NORENT NOWRITABLE(PRV), it is invalid to ALLOCATE or FREE a CONTROLLED variable unless it is a PARAMETER.
Explanation:

In FETCHABLE code, all CONTROLLED variables should be parameters.

IBM2418I E
Variable variable is unreferenced.
Explanation:

Under RULES(NOUNREF), the compiler will issue this message for any level-1 AUTOMATIC variable that is not referenced.

IBM2419I E
HGPR is invalid and ignored unless the ARCH option is 5 or greater.
Explanation:

The HGPR option will be ignored unless the ARCH option is 5 or greater since the necessary instructions are available only with ARCH(5) or later.

IBM2420I E
DFP is invalid and ignored unless the ARCH option is 7 or greater.
Explanation:

The FLOAT(DFP) option will be ignored unless the ARCH option is 7 or greater since the necessary instructions are available only with ARCH(7) or later.

IBM2421I E
A file should not be closed in its ENDFILE block.
Explanation:

In an ENDFILE block for a file, it is invalid to close that file in the ENDFILE block.

IBM2422I E
Under the DFP option, the HEXADEC attribute is not supported for FLOAT DEC.
Explanation:

Under the FLOAT(DFP) option, all FLOAT DECIMAL will be treated as DFP and may not be declared as HEXADEC. The attribute is still valid for FLOAT BIN.

IBM2423I E
Under the DFP option, the IEEE attribute is not supported for FLOAT DEC.
Explanation:

Under the FLOAT(DFP) option, all FLOAT DECIMAL will be treated as DFP and may not be declared as IEEE. The attribute is still valid for FLOAT BIN.

IBM2424I E
Scale factors are not allowed in FLOAT declarations.
Explanation:

Scale factors are valid only in declares of FIXED BIN or FiXED DEC. The first declaration below is invalid and should be changed to one of the subsequent declarations.

 
 
    dcl a1 float dec(15,2);
 
    dcl a2 fixed dec(15,2);
    dcl a3 float dec(15);
 
IBM2425I E
Statement with ELSE IF should be rewritten using SELECT.
Explanation:

Under RULES(NOELSEIF), the compiler will issue this message for statement where an ELSE is immediately followed by an IF statement.

IBM2426I E
Maximum nesting of DO statements has been exceeded.
Explanation:

The nesting of DO statements has exceeded the value specified in the DO suboption of the MAXNEST compiler option.

IBM2427I E
Maximum nesting of IF statements has been exceeded.
Explanation:

The nesting of IF statements has exceeded the value specified in the IF suboption of the MAXNEST compiler option.

IBM2428I E
Maximum nesting of PROC and BEGIN statements has been exceeded.
Explanation:

The nesting of PROC and BEGIN statements has exceeded the value specified in the BLOCK suboption of the MAXNEST compiler option.

IBM2429I E
CMPAT(V3) requires that 8-byte integers be allowed. The second value in the FIXEDBIN suboption of the LIMITS option will be set to 63.
Explanation:

The use of the CMPAT(V3) option with LIMITS(FIXEDBIN(31,31)) is not supported. Since CMPAT(V3) will cause various built-in functions (such as HBOUND) to return a FIXED BIN(63) result, at least the second value in the FIXEDBIN suboption of LIMITS must be 63 (i.e. LIMITS(FIXEDBIN(31,63)) or LIMITS(FIXEDBIN(63,63)) must be in effect).

IBM2430I E
The LINESIZE value specified in the OPEN of file file name is not compatible with the RECSIZE specified in its declare.
Explanation:

If the file has F format and is not a PRINT file, then the LINESIZE must be no greater than the RECSIZE. If the file has F format and is a PRINT file, then the LINESIZE must be less than the RECSIZE. If the file has V format and is not a PRINT file, then the LINESIZE must be no greater than the RECSIZE-4. If the file has V format and is a PRINT file, then the LINESIZE must be less than the RECSIZE-4.

IBM2431I E
The option option conflicts with the GOFF option. NOGOFF will be used instead.
Explanation:

The specified option is not permitted with the GOFF option, and the GOFF option will be turned off so that the compile may proceed. This applies, for example, to the NOWRITABLE(PRV) and COMMON options.

IBM2432I E
The attribute character is invalid with parameters and is ignored.
Explanation:

The INITIAL attribute, for example, is invalid with parameters (since their storage will have been allocated elsewhere).

   dcl a fixed bin parameter initial( 0 );
IBM2433I E
The attribute character is invalid with DEFINED and is ignored.
Explanation:

The INITIAL attribute, for example, is invalid with DEFINED variables (since their storage will have been allocated elsewhere).

   dcl b char(1) initial( ’’ ) defined(a);
IBM2434I E
Under RULES(NOLAXENTRY), all ENTRY declares must specify a parenthesized parameter list, even if empty.
Explanation:

Under RULES(NOLAXENTRY), all ENTRY declares must be prototyped. If the ENTRY should have no parameters, it should be declared as ENTRY() rather than as simply ENTRY.


Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)