When a1=b1 then When a1=b1 then DO
Say 'A1 equals B1' Say 'A1 equals B1'
exit exit
Otherwise nop end
end Otherwise nop
end
System action: Execution stops.
User response: Make the necessary corrections.
CICREX455E Error 8 running fn ft, line nn:
Unexpected THEN or ELSE
Explanation: The language processor has found a
THEN or an ELSE that does not match a corresponding
IF clause. This situation is often caused by using an
incorrect DO-END in the THEN part of a complex
IF-THEN-ELSE construction. For example,
WRONG RIGHT
If a1=b1 then do; If a1=b1 then do;
Say EQUALS Say EQUALS
exit exit
else end
Say NOT EQUALS else
Say NOT EQUALS
System action: Execution stops.
User response: Make the necessary corrections.
CICREX456E Error 9 running fn ft, line nn:
Unexpected WHEN or OTHERWISE
Explanation: The language processor has found a
WHEN or OTHERWISE instruction outside of a
SELECT construction. You may have accidentally
enclosed the instruction in a DO-END construction by
leaving off an END instruction, or you may have tried to
branch to it with a SIGNAL statement (which cannot
work because the SELECT is then terminated).
System action: Execution stops.
User response: Make the necessary correction.
CICREX457E Error 10 running fn ft, line nn:
Unexpected or unmatched END
Explanation: The language processor has found more
ENDs in your program than DOs or SELECTs, or the
ENDs were placed so that they did not match the DOs
or SELECTs. Putting the name of the control variable on
ENDs that close repetitive loops can help locate this
kind of error.
This message can be caused if you try to signal into the
middle of a loop. In this case, the END will be
unexpected because the previous DO will not have
been executed. Remember, also, that SIGNAL
terminates any current loops, so it cannot be used to
transfer control from one place inside a loop to another.
This message can also be caused if you place an END
immediately after a THEN or ELSE construction or if
you specified a name on the END keyword that does
not match the name following DO.
System action: Execution stops.
User response: Make the necessary corrections. It
may be helpful to use TRACE Scan to show the
structure of the program, making it easier to find your
error. Putting the name of the control variable on ENDs
that close repetitive loops can also help locate this kind
of error.
CICREX458E Error 11 running fn ft, line nn: Control
stack full
Explanation: This message is issued if you exceed
the limit of 250 levels of nesting of control structures
(DO-END, IF-THEN-ELSE, and so forth) or when user
storage limit is reached, whichever is less.
This message could be caused by a looping
INTERPRET instruction, such as:
line='INTERPRET line'
INTERPRET line
These lines would loop until they exceeded the nesting
level limit and this message would be issued. Similarly,
a recursive subroutine that does not terminate correctly
could loop until it causes this message.
System action: Execution stops.
User response: Make the necessary corrections.
CICREX459E Error 12 running fn ft, line nn: Clause
too long
Explanation: You have exceeded the limit for the
length of the internal representation of a clause. The
actual limit is the amount of storage that can be
obtained on a single request.
If the cause of this message is not obvious to you, it
may be due to a missing quote that has caused a
number of lines to be included in one long string. In this
case, the error probably occurred at the start of the data
included in the clause traceback (flagged by +++ on the
console).
The internal representation of a clause does not include
comments or multiple blanks that are outside of strings.
Note also that any symbol (name) or string gains two
characters in length in the internal representation.
System action: Execution stops.
User response: Make the necessary corrections.
CICREX460E Error 13 running fn ft, line nn: Invalid
character in program
Explanation: The language processor found an
incorrect character outside of a literal (quoted) string.
Valid characters are:
Error Numbers and Messages
Appendix A. Error Numbers and Messages 381