@Test public void testUnicodeSMP() throws Exception {
		TestingUnbufferedCharStream input = createStream("\uD83C\uDF0E");
		assertEquals(0x1F30E, input.LA(1));
		assertEquals("\uD83C\uDF0E", input.getBuffer());
		input.consume();
		assertEquals(IntStream.EOF, input.LA(1));
		assertEquals("\uFFFF", input.getBuffer());
	}
It is not valid to pass a mark to {@link IntStream#seek}, but
{@link UnbufferedCharStream} creates marks in such a way that this
invalid usage results in an {@link IllegalArgumentException}.
tool-testsuite/test/org/antlr/v4/test/tool/TestUnbufferedCharStream.java