Previous Topic: VDS MessagesNext Topic: V37 Messages


VDSCOMP

COPYBOOK MEMBER NAME LENGTH ERROR

Reason:

The length of a copybook can be from 1 to 8 characters.

Action:

Verify that the name of the COPYBOOK is between 1 and 8 characters.

COPYBOOK MEMBER NAME NOT A STRING

Reason:

The name of the copybook must be a string. The name must be between single quotation marks.

Action:

Verify that the name of the COPYBOOK is enclosed in single quote marks.

CURRENT TOKEN IS <xxxxxxxx>

Reason:

This message follows the SYNTAX ERROR message. It shows the last token that was parsed by the compiler before the error was detected. A token can be a word, a number, a string, or a delimiting character.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

STACK OVERFLOW — PLEASE SIMPLIFY YOUR PROGRAM

Reason:

The ASRSIZE option of the START or MODIFY command can double or quadruple the amount of space CA Allocate allocates for the Allocation Selection Routine (ASR). See the description of ASRSIZE for more information.

If this error persists, even with ASRSIZE=3, then deeply nested IF statements can cause the compiler to run out of space. Try the EXIT statement to get out early, or set user variables to values that can be tested later in ASR. A FILTLIST can reduce multiple IFs on the same variable.

Action:

Reduce the complexity of the ASR. For assistance, contact Technical Support.

START OF COMPILE OF <xxxxxxxx> ASR

Reason:

This message indicates the name of the ASR that CA Allocate is currently compiling.

Action:

None. This is an informational message.

SUCCESSFUL COMPILE OF <xxxxxxxx> ASR

Reason:

This message indicates the name of the ASR that compiled successfully.

Action:

None. This is an informational message.

SYNTAX ERROR: "," EXPECTED IN SUBSTR BEFORE LAST ARGUMENT

Reason:

A comma must separate the last expression in a SUBSTR argument list from the other argument(s)—&SUBSTR(3,&HLQ).

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: "=" SIGN EXPECTED

Reason:

The equal sign (=) must appear in the SET statement after the variable that is to be set.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: "END" EXPECTED

Reason:

The current token does not start an executable statement; therefore, the DO statement specified previously must END here.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: "THEN" EXPECTED

Reason:

The expression after the IF keyword must be followed by THEN.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: (EXPECTED

Reason:

The open parenthesis that is required after the INCLUDE or EXCLUDE keyword is not present, or The SUBSTR keyword must be followed by an open parenthesis.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: (EXPECTED AFTER CODE KEYWORD

Reason:

In an EXIT statement, the CODE keyword was not followed by the required open parenthesis.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: ) EXPECTED

Reason:

The close parenthesis that is required after the INCLUDE or EXCLUDE lists was not present, or an expression that began with an open parenthesis does not end with a close parenthesis, or A subscript expression must end with a close parenthesis.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: ) EXPECTED AFTER EXIT CODE

Reason:

In an EXIT statement, the CODE expression was not followed by the required close parenthesis.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: ) EXPECTED AT END OF SUBSTR ARGUMENT LIST

Reason:

The SUBSTR function argument list must end with a close parenthesis.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: A STRING LITERAL EXPECTED AFTER "WRITE"

Reason:

The WRITE keyword must be followed by a quoted string.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: CAN'T SET THIS VARIABLE

Reason:

CA Allocate does not allow all variables to be SET. The &DSN variable cannot be changed, for example. See the section Variables, in the User Guide for which variables may be targets of the SET statement (input/output variables).

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: CANNOT WRITE A FILTER LIST VARIABLE

Reason:

The variable name was that of a defined FILTLIST, but the contents of a FILTLIST cannot be displayed in a WRITE statement.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: DUPLICATE FILTLIST NAME

Reason:

A FILTLIST with the same name has already been defined.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: EXIT CODE IS NOT NUMERIC

Reason:

The expression given for the EXIT CODE is of character type.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: EXPRESSION AFTER "=" IS NOT NUMERIC

Reason:

The variable to be set is numeric but the expression following the equal sign (=) is of character type.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: EXPRESSION BEFORE "OR" IS NOT NUMERIC

SYNTAX ERROR: EXPRESSION AFTER "OR" IS NOT NUMERIC

SYNTAX ERROR: EXPRESSION BEFORE "AND" IS NOT NUMERIC

SYNTAX ERROR: EXPRESSION AFTER "AND" IS NOT NUMERIC

Reason:

When used to compare multiple values, the Boolean operators AND and OR can join only numeric expressions.

 IF &BLKSIZE = 6320 OR 23440 THEN     <== valid
 IF &HLQ = 'A' OR 'B' THEN            <== not valid.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: EXPRESSION IS NOT CHARACTER TYPE

Reason:

The variable to be set is of character type but the expression is numeric.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: FIRST ARGUMENT OF SUBSTR IS NOT NUMERIC

Reason:

The first argument of the SUBSTR function must evaluate to a number.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: IDENTIFIER EXPECTED

Reason:

The token after FILTLIST does not start with an alphabetic character.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: INTERNAL ERROR: EXPRESSION HAS UNKNOWN TYPE

Reason:

This message should never appear.

Action:

For assistance, contact Technical Support.

SYNTAX ERROR: LAST ARGUMENT OF SUBSTR IS NOT CHARACTER TYPE

Reason:

The last argument of the SUBSTR function must evaluate to a character type. It is not valid to take the substring of a number.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: LAST CHARACTER OF VDSEXIT IS NOT 0-9

Reason:

The CALL keyword must be followed by VDSEXIT?, where the question mark is 0, 1, 2, 3, 4, 5, 6, 7, 8 or 9.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: MEGABYTE PREFIX IS GREATER THAN 2,097,151

Reason:

The MB suffix multiplies the number specified by 1024. The resulting number is too large to fit into a 32‑bit computer word.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: MISSING TERM IN EXPRESSION

Reason:

An operator (such as EQ) is not followed by a literal, a variable, a function such as SUBSTR, or an expression.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: PATTERN OR STRING EXPECTED

Reason:

The FILTLIST list element must be a pattern or a string.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: PROGRAM TOO LARGE

Reason:

The pseudo‑code generated by the compiler exceeds 64k.

Action:

Reduce the complexity of the ASR. For assistance, contact Technical Support.

SYNTAX ERROR: SECOND ARGUMENT OF SUBSTR IS NOT NUMERIC

Reason:

The second argument of the SUBSTR function must evaluate to a number.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: STATEMENT EXPECTED

Reason:

The current token is not one of the keywords that starts a statement—IF, DO, SET, WRITE, EXIT, CALL, FILTLIST.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: STATEMENT EXPECTED

Reason:

A statement keyword must appear after THEN or ELSE. The FILTLIST statement is not allowed here.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: STRING EXPECTED FOLLOWING COMMA

Reason:

A string literal followed by a comma signals the continuation of a string list, but the token following the comma was not a string literal. The following is valid:

SET &STORGRP='PRIMARY','SCRATCH'

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: SUBSCRIPT MUST BE NUMERIC

Reason:

A subscript expression must evaluate to a number.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: TOO MANY CONSTANTS

Reason:

The amount of storage required holding the strings and numbers in the Allocation Selection Routine (ASR) exceeds 64k.

Action:

Reduce the complexity of the ASR. For assistance, contact Technical Support.

SYNTAX ERROR: UNDEFINED VARIABLE

Reason:

The current token is not a built‑in variable and it has not yet been defined as a FILTLIST. A FILTLIST must be defined before its first use in an expression.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: UNDEFINED VARIABLE IN WRITE STATEMENT

Reason:

The current token is not the name of a built‑in variable. To show an ampersand (&) in a WRITE statement, code two adjacent ampersands (&&).

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: INTERNAL LOGIC ERROR

Reason:

For assistance, contact Technical Support. This message should never appear.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: VARIABLE CANNOT HAVE SUBSCRIPT

Reason:

A subscript expression is valid only for &DSN, &ACCT_STEP, and &ACCT_JOB. The following would cause generation of this message:

IF &USER(3) EQ A THEN ...

You may be able to accomplish your goal with the SUBSTR function.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: VARIABLE NAME EXPECTED

Reason:

The token following the SET keyword and the ampersand (&) does not start with an alphabetic character.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: VDSEXIT? EXPECTED AFTER "CALL"

Reason:

The CALL keyword must be followed by VDSEXIT?, where the question mark is 0, 1, 2, 3, 4, 5, 6, 7, 8 or 9.

SYNTAX EXPRESSION ON RIGHT SIDE OF RELATION IS NOT NUMERIC

SYNTAX EXPRESSION ON LEFT SIDE OF RELATION IS NOT NUMERIC

Reason:

One side of a relational expression evaluates to a number but the other side evaluates to a character type.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX VARIABLE NAME OR SUBSTR EXPECTED AFTER AMPERSAND

Reason:

The token following an ampersand (&) is not a variable or SUBSTR. To use the ampersand (&) character, two of them (&&) must be entered.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX ERROR: VARIABLE EXCEEDS MAXIMUM LENGTH

Reason:

The variable in the SET statement exceeds the maximum allowable length. For the &STORGRP variable this maximum length is 134 characters, including commas.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

SYNTAX VARIABLE TO SET DOES NOT BEGIN WITH AN AMPERSAND

Reason:

The name of the variable following the SET keyword must begin with an ampersand (&).

Action:

Locate and correct the statement that is in error and then recompile the ASR.

USAGE ERROR: MAXIMUM COPYBOOK CALL

Reason:

The maximum level of COPYBOOKS is 20. The ASR that is being compiled has more than 20 levels of COPYBOOKS.

Action:

Reduce the complexity of the ASR. For assistance, contact Technical Support.

USAGE ERROR: RECURSIVE COPYBOOK CALL

Reason:

This message occurs when a COPYBOOK uses another COPYBOOK that has already been used. For example:

VDSPROG contains the following: COPYBOOK 'FILTERS'

FILTERS contains the following: COPYBOOK 'FILTER1'

FILTER1 contains the following: COPYBOOK 'FILTERS'

Action:

Correct the above error by removing COPYBOOK 'FILTERS' from either VDSPROG or FILTER1.

VARIABLE EXCEEDS MAXIMUM LENGTH

Reason:

The variable in the SET statement exceeds the maximum allowable length. For the &STORGRP variable, this maximum length is 134 characters, including commas.

Action:

Locate and correct the statement that is in error and then recompile the ASR.

VDSHSM0x <variable>

Reason:

These are internal diagnostic messages used by CA Technical Support.

Action:

No action is necessary unless you are working directly with CA Technical Support. In that case, the information displayed by this message may be requested.