Here's a bug I just discovered in GNU Bash.  It's in this version:

GNU bash, version 3.2.25(1)-release (x86_64-redhat-linux-gnu)
Copyright (C) 2005 Free Software Foundation, Inc.

I make two files of one character each:

$ echo A > foo
$ echo B > bar


This works as expected:

$ echo -e 'C\nD' | paste <(cat foo bar) -
A	C
B	D


This should do the same thing but it fails:

$ echo -e 'C\nD' | paste <(cat ./{foo,bar}) -
A	B	C
 		D

That's pretty bad!  I have to be careful.  Strangely, it's all about the 
use of "<()" for process substitution because this behaves normally:

$ cat ./{foo,bar}
A
B

This newer version of Bash does not have the same problem:

GNU bash, version 4.0.33(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2009 Free Software Foundation, Inc.


Unfortunately, our rocks cluster built on CentOS is using the old version 
of Bash.  Another University machine is running this old version and it 
also has the bug:

GNU bash, version 2.05b.0(1)-release (i386-redhat-linux-gnu)
Copyright (C) 2002 Free Software Foundation, Inc.


So my own boxes are OK, all using Bash 4 and Ubuntu, but I can't upgrade 
Bash on these other machines without requesting help.

Mike