Bug 15814

Summary: bash - internal printf no longer ignores options
Product: [Retired] Red Hat Linux Reporter: Need Real Name <tonyn>
Component: bashAssignee: Bernhard Rosenkraenzer <bero>
Status: CLOSED NOTABUG QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: 7.0   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2000-08-09 13:37:18 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Need Real Name 2000-08-09 13:37:16 UTC
RedHat Pinstripe Beta-5

From a bash shell, type:
	printf "-w 123\n"

and you get:
	bash: printf: illegal option: -w
	printf: usage: printf format [arguments]

Now with ash, or bash on RedHat 6.2 and earlier, or if you use
/usr/bin/printf,   you would get:
	-w 123

The bash man-page, printf section,  still does not indicate that there are
_any_ valid options - so why does it attempt to process them?

I am logging this as a serious defect because it breaks
backwards-compatability. There may be a number of customer-written scripts
which suddenly start to fail if they upgrade to RedHat 7.0.

Comment 1 Bernhard Rosenkraenzer 2000-08-14 14:45:29 UTC
POSIX compliance in bash 2.x - anything starting with "-" is an argument.
If you need the old behavior, use /usr/bin/printf.