Reference highlighters allow for potential mutual recursion between highlighters. This is usually fine, but if the recursion happens on the same buffer range, it means we will recurse infinitely. Fixes #1920