check procedures don't have a return statement

and add note for homogeneous AST