Greg Wooledge wrote:
On Fri, Aug 12, 2011 at 12:19:59PM -0700, Linda Walsh wrote:
Under -e, it would fail on the 'let' statement
This is one of the cases I mention on http://mywiki.wooledge.org/BashFAQ/105
----
AND there, you explain WHY this needs to be fixed.
Your final recommendation: don't use -e, because it is random.
-e is NOT a replacement for your own error checking. It's a supplement.
People who only think 1 layer is good for protection don't
understand security, or program design. If you think about the
OSI model -- for networking -- well that's how SW today is designed,
but with about 3-6 times (maybe more) those 7 'layers', Error
protection and catching is so woefully BACKWARD, compared to the state
of SW, it's ludicrous.
There's always an excuse for not using all the available tools -- that
doesn't mean it is "good practice" -- common maybe, but not good. The fact
that no one uses such tools allows them to become broken and "unusable".
You AGREE that -e is broken.
I am sorry to tell you, but for a few years -- it wasn't.
You missed nirvana.
That's my issue -- making bash's -e work **usefully**, so people like
you and Eric won't just say "it's too broken to be useful". But
instead have it be a useful part of a devel box.
It's NOT that you disagree that the current functionality is broken!
So Why are you not supporting me in having normal bash 'work'? I'm not
talking
about --posix mode. If it is so bad you recommend using, then I don't see
you have ANY valid reason to be against it being 'fixed' -- unless it's to
to be able to maintain that "bash's -e is "too screwed up to be useful"?
What's up with that? If you agree it's broken, why not support fixing it?
"-e" -- in a ****WELL DESIGNED PROG***, where errors are caught,
shouldn't cause a otherwise working program to fail.
In my opinion, a well-designed program will not use set -e. We're
going to have to "agree to disagree" about this apparently
----
I didn't say the program HAD to use "-e", I simply asserted that
if -e is working correctly, and a program catches uncaught errors,
then it should not fail.
Are you saying that -e would cause a well-designed program to fail?
(yes you are! -- you say so on your webpage). That's the problem.