set -e skips the lines you think it catches: eight behaviours measured on bash 3.2.57

· Dev.to