(C3091) Procedures/Functions that are used incorrectly
Procedures are used as functions or treated in some expression as if they return a value. Functions are used as procedures, or called in expressions where an action is expected.<Function/Procedure> <subroutine name>
used as <Procedure/Function> in definition of
<element name> <expression of subroutine call>FunctionFACTORIAL
(returning an integer) is used as a procedure in the following mini-spec: