substitution fails if it begins with *()

2008-09-26 Thread bashbug
Configuration Information [Automatically generated, do not change]:
Machine: i486
OS: linux-gnu
Compiler: gcc
Compilation CFLAGS:  -DPROGRAM='bash' -DCONF_HOSTTYPE='i486' 
-DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='i486-pc-linux-gnu' 
-DCONF_VENDOR='pc' -DLOCALEDIR='/usr/share/loc
uname output: Linux celerypad 2.6.24-21-generic #1 SMP Sat Jul 26 15:39:24 UTC 
2008 i686 GNU/Linux
Machine Type: i486-pc-linux-gnu

Bash Version: 3.2
Patch Level: 39
Release Status: release

Description:
if a *() is at the begin of a substitution, the substitution fails
if the *() is preceeded by something, the substitution works

Repeat-By:
  $ r="z = y";echo ${r/*( )=*( )/=}  # *() at begin of 
substitution causes substitution to fail
z = y
  $ r="z = y";echo ${r/ *( )=*( )/=} # works if *() is 
preceeded by something
z=y




Re: substitution fails if it begins with *()

2008-09-26 Thread Chet Ramey
[EMAIL PROTECTED] wrote:

> Machine Type: i486-pc-linux-gnu
> 
> Bash Version: 3.2
> Patch Level: 39
> Release Status: release
> 
> Description:
> if a *() is at the begin of a substitution, the substitution fails
> if the *() is preceeded by something, the substitution works

Thanks for the report.  This will be fixed in the next bash version.

Chet

-- 
``The lyf so short, the craft so long to lerne.'' - Chaucer

Chet Ramey, ITS, CWRU[EMAIL PROTECTED]http://cnswww.cns.cwru.edu/~chet/