THE FOLLOWING LIST CONTAINS A SUMMARY OF SYNTACTICAL RESTRICTIONS IN THE PLANC-100-B VERSION.
A statement containing a MACRO call, an INLINE routine call or a $INCLUDE command, must be terminated by carriage return.
The IND standard routine can not have as parameter a routine pointer which qualifies a routine with an in-value.
The argument to the standard routine ADDR can not be enclosed in parentheses if it is a routine pointer.
The standard routine ADDR can not have as argument a routine with an outvalue.
The standard routines MININDEX, MAXINDEX and IN can not be applied on the parameters within a routine with the STANDARD modifier. The compiler does not give any error messages.
The ON OVERFLOW statement does not handle integer unsigned values.
It is impossible to export a family of routines, where the routine-name is equal to the name of a PLANC predefined standard routine or a PLANC operator.
The following type declaration is illegal, and the compiler does not give any error message:
TYPE A=RECORD ......ENDRECORD
TYPE B=A % illegal type declaration.
The access modifiers of a formal parameter type are not relevant when declaring routines with equal names. Example:
A. ROUTINE VOID,VOID(INTEGER ): RUT?
B. ROUTINE VOID,VOID(INTEGER WRITE): RUT?
The compiler can not distinguish between declaration A. and B.
The $COMPILE command and the must be separated with at least one space.
$OPTION ARRAY-INDEX-CHECK <ON/OFF>
If the option is ON, legal array accesses will be checked upon compile-/run-time. The option might be turned ON/OFF anywhere in the source program.
$EJECT
A form-feed will be written to the list-device.