Handle character-or-EOF more correctly internally. This makes no practical difference at present, because our EOF indication is not one of the characters matched. But that's charset-specific.