Bash has a lot of implicit semantics for non-existent variables.
This can cause competing directives (like $OMP) to be eaten silently.
Setting a stricter mode for bash by default can help a lot.
set -e # Abort on first error
set -u # Err on undefined variable
set -o pipefail # Err on redirection failure
This would be a breaking change. The zpp standard library is not set -u safe.
See gysela merge !633 for a few examples.
Bash has a lot of implicit semantics for non-existent variables.
This can cause competing directives (like $OMP) to be eaten silently.
Setting a stricter mode for bash by default can help a lot.
This would be a breaking change. The zpp standard library is not
set -usafe.See gysela merge !633 for a few examples.