This subroutine takes two overlapping ranges and returns a single range which contains the sum of the two ranges.
Note that the function will not work UNLESS THE RANGES OVERLAP as tested by checkRangeOverlap() (see section 9.4.2).
function orRangePair(rangeA, rangeB) result(oredRanges) type(RangeT), intent(in) :: rangeA, rangeB type(RangeT) :: oredRanges end function orRangePair