under what condition file_exists throws a warning? I just don't like the @ operator as it's very slow