OK, now I understand:
I changed the patch to make the junit fail and you see the problem with [x TO x} matching nothing.
It seems that somehow the formatting of your original comment in JIRA was broken, I misunderstood and thought you mean half open ranges like: [x TO *] behaving different like [x TO *}, which is not the case (i am glad).
This of course returns no results, because the upper bound explicitely excludes the lower bound, so its in fact a query where upper<lower bound, so returns nothing, this is not bug or limitation, its in my opinion correct:
assertRangeQuery(NumberType.NEGATIVE, NumberType.NEGATIVE, false, true, 1);
I would change that line to assert 0 results like in the next test with (true, false).