The main documentation of the Get_Version_Assembled_Vector Procedure contains additional explanation of this code listing.
function Get_Version_Assembled_Vector (AV) result(Version) ! Input variable. type(Assembled_Vector_type), intent(in) :: AV ! Variable to be queried. ! Output variable. type(integer) :: Version ! Version number. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! Verify requirements. VERIFY(Valid_State(AV),5) ! AV is valid. ! Get the value. Version = AV%Version ! Verify guarantees - none. return end function Get_Version_Assembled_Vector