@Test
	public void testMarkReleaseOutOfOrder() {
		CharStream input = createStream("");
		int m1 = input.mark();
		int m2 = input.mark();
		assertThrows(IllegalStateException.class, () -> input.release(m1));
	}
The {@link IntStream} interface does not specify the behavior when marks
are not released in the reversed order they were created, but
{@link UnbufferedCharStream} handles this case by throwing an
{@link IllegalStateException}.
tool-testsuite/test/org/antlr/v4/test/tool/TestUnbufferedCharStream.java