pgsql: printf("%lf") is not portable, so omit the "l". - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: printf("%lf") is not portable, so omit the "l".
Date
Msg-id E1fKQSV-0001iO-SX@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
printf("%lf") is not portable, so omit the "l".

The "l" (ell) width spec means something in the corresponding scanf usage,
but not here.  While modern POSIX says that applying "l" to "f" and other
floating format specs is a no-op, SUSv2 says it's undefined.  Buildfarm
experience says that some old compilers emit warnings about it, and at
least one old stdio implementation (mingw's "ANSI" option) actually
produces wrong answers and/or crashes.

Discussion: https://postgr.es/m/21670.1526769114@sss.pgh.pa.us
Discussion: https://postgr.es/m/c085e1da-0d64-1c15-242d-c921f32e0d5c@dunslane.net

Branch
------
REL9_4_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/e52cabff7054005d2f7157c236d996dcd79baf5c

Modified Files
--------------
doc/src/sgml/ecpg.sgml                                    | 2 +-
src/interfaces/ecpg/test/compat_informix/sqlda.pgc        | 2 +-
src/interfaces/ecpg/test/expected/compat_informix-sqlda.c | 2 +-
src/interfaces/ecpg/test/expected/preproc-outofscope.c    | 2 +-
src/interfaces/ecpg/test/expected/sql-sqlda.c             | 2 +-
src/interfaces/ecpg/test/preproc/outofscope.pgc           | 2 +-
src/interfaces/ecpg/test/sql/sqlda.pgc                    | 2 +-
7 files changed, 7 insertions(+), 7 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Assorted minor cleanups for bootstrap-data Perl scripts.
Next
From: Tom Lane
Date:
Subject: pgsql: Fix unportable usage of printf("%m").