Red Hat Bugzilla – Bug 57709
for a in; do ... done broken
Last modified: 2008-05-01 11:38:01 EDT
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.6) Gecko/20011120
Description of problem:
RedHat 7.2 craps out on shell scripts that contain
for a in ; do
for a in $FOO; do
where $FOO is empty. This is a common and useful construct.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. See Description
Actual Results: bash gives a syntax error
Expected Results: The loop body should be skipped completely.
This construct was accidentally forbidden from an earlier version of the
POSIX standard; that was corrected later in the standard by Defect Report.
It looks like this might be a case of "standards bug causing software bug."
I'm setting the Severity to "high" because of the pervasiveness of this
This has been fixed since 2.05a-1.
Until recently, there was no standard mandating this to work the way you
expected it to (there is now, fortunately), so there will not be an errata
update. Using the package from rawhide should not cause any problems, though.