Date: Fri, 13 Mar 2009 02:59:50 -0700 (PDT) From: GESBBB <gesbbb@yahoo.com> To: freebsd-ports@freebsd.org Subject: Re: Problem with Bash-4 and $(command) syntax Message-ID: <887176.71382.qm@web32105.mail.mud.yahoo.com> In-Reply-To: <721111.30542.qm@web39104.mail.mud.yahoo.com> References: <721111.30542.qm@web39104.mail.mud.yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> From: bf <bf2006a@yahoo.com>=0A=A0=0A> > > {Problem with Bash-4 and $(com= mand) ...}:=0A> > [...]=0A> > > I found the same problem, and have reverted= to=0A> > >=A0 bash3.2 until it's sorted out. =0A> >=0A> > See if the follo= wing helps.=0A> >=0A> > http://tiswww.case.edu/php/chet/bash/COMPAT=0A> >= =0A> > Especially:=0A> >=0A> > 38. Since bash-4.0 now follows Posix rules f= or finding the =0A> > closing=0A> > delimiter of a $() command substitution= , it will not behave as > previous=0A> > versions did, but will catch more = syntax and parsing errors =0A> > before=0A> > spawning a subshell to evalua= te the command substitution.=0A> >=0A> >Eray=0A> =0A> Yes, the above is tru= e.=A0 But many of the examples cited=0A> by people noticing this problem ar= e perfectly valid and=0A> _should_ work.=A0 The problem is that the port's = parser is =0A> broken, owing in part to incompatibilities between the =0A> = system yacc currently used to build the parser and GNU=0A> bison, which is = used by the people who write bash.=A0 This=0A> is true of both shells/bash = and shells/bash3, but is more=0A> noticeable in shells/bash.=A0 A fix has b= een proposed, and patches=0A> are available, in the follow-up to:=0A> =0A> = http://www.FreeBSD.org/cgi/query-pr.cgi?pr=3Dports/101230=0A> =0A> The port= 's maintainer has been reluctant to switch to bison,=0A> so this may not be= the solution that is ultimately used to=0A> fix the port, but you can use = these in the meantime.=0A=0AUntil a fix has been put in place, I would sugg= est that a notice be placed in UPDATING that Bash-4 is not completely funct= ional and its use is not recommended. Better yet, maybe the port should jus= t be marked "BROKEN", since it clearly is. I personally would never have in= stalled it had I been aware of the problems it is causing.=A0 IMHO, it shou= ld have been tested more completely before being released into the ports sy= stem.=0A=0A-- =0AJerry
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?887176.71382.qm>