fix: don't crash on exit with no filename
visit methods in order of their names