OK, I have a snapshot of 1.8.0 working, but that doesn't help. It has
something to do with the sorting of elements. As far as I can tell, this
is what's happening:
InstrumentName Piano's support contains
VerticalAxisGroup's elements contains
InstrumentName Right's support contains
VerticalAxisGroup (the same one!)
So if we call Piano->get_offset, it calls VerticalAxisGroup->extent,
which calls Right->get_offset, which calls VerticalAxisGroup->extent
which is a calculation-in-progress, so we get any empty interval.
If we call Right->get_offset _before_ we call Piano->get_offset,
VerticalAxisGroup is not a calculation-in-progress, so we get the actual
extent. That is, we get different answers depending on the order in
which we call things.