you call #check_open explicitly
eof? calls #check_open
read_string calls #check_open