It's in 7.19.6.1, paragraph 7:
"[...] has no effect on a following a, A, e, E, f, F,
g, or G conversion specifier."
"No effect" may not seem worth getting excited about, but in C90
the combination "%lf" had undefined behavior; now it's a no-op.
The Rationale doesn't say why the Committee chose to adopt
this new no-op. I can imagine two plausible reasons: Writing the
C90-undefined "%lf" may have been such a common mistake that it
seemed worth sanctifying, or maybe there was an effort to make
the printf() and scanf() formats a little more similar. That's
just speculation on my part, though; the folks on comp.std.c
might have more accurate information.
--
Eric Sosman
eso...@comcast-dot-net.invalid