I tested the REPLs of the usual Schemes to determine which ones terminated when they read #!eof from standard input.
Terminated: Chicken, SISC, Detroit, Chez, Vicare, KSi
Lexical syntax error: Racket, Gauche, Scheme48/scsh, Guile, Larceny, NexJ, SigScheme, MiniScheme, S7, Unlikely, SIOD, Rep, SXM, Sizzle, Foment, Chibi
Self-quoting object: MIT, Gambit, Kawa
Special object: Llava, Owl Lisp
Unknown identifier: SigScheme, Shoe, BDC, XLisp, Schemik, UMB, Inlab
Attempts to evaluate an eof-object: Mosh
Apparently ignores it: Bigloo, SCM, Ypsilon, IronScheme, JScheme, STklos, TinyScheme, Scheme 9, RScheme, Elk, FemtoLisp, Dfsch, Sagittarius, Picrin
I also tried evaluating (eof-object? #!eof) in the REPL for a subset of the above. Schemes that report a lexical syntax error or treat #!eof as an identifier were not retested. Schemes that ignore #!eof usually ignored the closing ) as well; when one was supplied, they reported a missing argument to eof-object?.
Reports premature EOF: MIT, Detroit, KSi, S7
Attempts to evaluate an EOF object: Vicare (will return #t to (eof-object? '#!eof))
Lexical syntax error: Mosh
Does not have eof-object?: Owl Lisp
Returns #t: Gambit, Chicken, Kawa, SISC, Chez
Returns #f: Llava