PDA

View Full Version : Bash 4 b0rken?


DutchDaemon
March 13th, 2009, 14:55
Interesting, my bash scripts broke when I went to bash 4 ..


date=$(/bin/date)
bash: command substitution: line 17: syntax error near unexpected token `)'
bash: command substitution: line 17: `/bin/date)'


According to the manual, there's (still) nothing wrong with it:


Command Substitution
Command substitution allows the output of a command to replace the com-
mand name. There are two forms:


$(command)
or
`command`


I've seen this on several machines now (all 7.1-STABLE). Wonder if this is a port(ing) issue, or might bash be broken on other OS platforms? As my bash scripts are usually valid sh syntax, changing the bangpath to /bin/sh is no big deal, of course, but still ..

plamaiziere
March 13th, 2009, 16:48
Interesting, my bash scripts broke when I went to bash 4 ..

I've seen this on several machines now (all 7.1-STABLE). Wonder if this is a port(ing) issue, or might bash be broken on other OS platforms? As my bash scripts are usually valid sh syntax, changing the bangpath to /bin/sh is no big deal, of course, but still ..

There is a discussion of this issue on the Freebsd ports@ mailing list. It seems there is a problem with yacc under FreeBSD.

See this thread:
http://groups.google.com/group/mailing.freebsd.ports/browse_thread/thread/2480ba468d49cc6e/8e0411e9f149adaf?lnk=raot

DutchDaemon
March 13th, 2009, 17:00
Thanks, yes, that looks like it. I wanted to hold off on a PR while I waited for some confirmation, but I see it's already 'out there'.

DutchDaemon
March 14th, 2009, 23:22
Looks like today's update (version 4.0.10(2)-release) sussed it.

vivek
March 16th, 2009, 19:17
I've just pushed update...and it is now compiling .. let us hope for the best!