@Override
    public Token recoverInline(Parser recognizer)
        throws RecognitionException
    {
		InputMismatchException e = new InputMismatchException(recognizer);
		for (ParserRuleContext context = recognizer.getContext(); context != null; context = context.getParent()) {
			context.exception = e;
		}

        throw new ParseCancellationException(e);
    }
Make sure we don't attempt to recover inline; if the parser
 successfully recovers, it won't throw an exception.
runtime/Java/src/org/antlr/v4/runtime/BailErrorStrategy.java