Ensure two identically-named procedures don't exist. Take the proposed procedure name, and return a legal name i.e. one that is not empty and doesn't collide with other procedures.
Proposed procedure name.
Block to disambiguate.
Non-colliding name.
Ensure two identically-named procedures don't exist. Take the proposed procedure name, and return a legal name i.e. one that is not empty and doesn't collide with other procedures.