Path: csiph.com!au2pb.net!usenet.blueworldhosting.com!feeder01.blueworldhosting.com!news.ripco.com!news.glorb.com!usenet.stanford.edu!not-for-mail From: Chet Ramey Newsgroups: gnu.bash.bug Subject: Re: -e does not take effects in subshell Date: Thu, 20 Aug 2015 19:56:47 -0400 Organization: ITS, Case Western Reserve University Lines: 28 Approved: bug-bash@gnu.org Message-ID: References: <20150811135056.GD4309@eeg.ccf.org> <55CC26A7.10000@redhat.com> <55D39A71.2030109@tlinx.org> <87mvxo5mme.fsf@igel.home> <55D3B22E.9040507@tlinx.org> <20150819124214.GL4309@eeg.ccf.org> <55D4FBEA.10602@tlinx.org> Reply-To: chet.ramey@case.edu NNTP-Posting-Host: lists.gnu.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Trace: usenet.stanford.edu 1440115119 27532 208.118.235.17 (20 Aug 2015 23:58:39 GMT) X-Complaints-To: action@cs.stanford.edu Cc: "bug-bash@gnu.org" , chet.ramey@case.edu To: Linda Walsh , Greg Wooledge Envelope-to: bug-bash@gnu.org User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 In-Reply-To: <55D4FBEA.10602@tlinx.org> X-Junkmail-Whitelist: YES (by domain whitelist at mpv2.tis.cwru.edu) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-Received-From: 129.22.105.37 X-BeenThere: bug-bash@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Bug reports for the GNU Bourne Again SHell List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Xref: csiph.com gnu.bash.bug:11404 On 8/19/15 5:58 PM, Linda Walsh wrote: > > > Greg Wooledge wrote: >> >> (Wow, how did we get here from "-e does not take effects in subshell"?) >> > --- > because the POSIX spec changed and bash's handling of "-e" > changed to follow the new spec. This is true, though I would have used `revised' instead of `new'. > The earlier spec had -e only exit a script if a *simple* (external) > command failed. It didn't include builtins nor functions. This is not; builtins and functions are simple commands. The Posix spec changed because it didn't accurately reflect historical behavior. There was a *lot* of discussion about how to accurately describe the desired behavior, but everyone agreed that restricting it to simple commands was not how the `base implementations' behaved. -- ``The lyf so short, the craft so long to lerne.'' - Chaucer ``Ars longa, vita brevis'' - Hippocrates Chet Ramey, ITS, CWRU chet@case.edu http://cnswww.cns.cwru.edu/~chet/