3 ms·
Yep, it is inconsistent: $ ( set -e; foo() { f=$(false); }; foo ; ); echo $? 1 $ ( set -e; foo() { local f=$(false); }; foo ; ); echo $? 0
by lisivka 10y ago
Yep, it is inconsistent:
$ ( set -e; foo() { f=$(false); }; foo ; ); echo $?
1
$ ( set -e; foo() { local f=$(false); }; foo ; ); echo $?
0
$ ( set -e; foo() { local f; f=$(false); }; foo ; ); echo $?
1
However, it is still better to use -e to catch errors early.