So, a subroutine that creates a couple of objects, none of which survive the life time of said subroutine, and which returns an integer, is a "multiple constructor", but it's also "silly and confusing"?
I find both your classifications of the subroutine not very useful.