complier warnings from ecpg tests

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

complier warnings from ecpg tests

Sergei Kornilov
Hello

I noticed few warnings from my compiler (gcc version 8.3.0 (Debian 8.3.0-6)) during make check-world:

array.pgc: In function ‘main’:
array.pgc:41:16: warning: ‘%d’ directive writing between 1 and 11 bytes into a region of size 10 [-Wformat-overflow=]
   sprintf(str, "2000-1-1 0%d:00:00", j);
                ^~~~~~~~~~~~~~~~~~~~
array.pgc:41:16: note: directive argument in the range [-2147483648, 9]
array.pgc:41:3: note: ‘sprintf’ output between 18 and 28 bytes into a destination of size 20
   sprintf(str, "2000-1-1 0%d:00:00", j);
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
array.pgc:43:16: warning: ‘sprintf’ may write a terminating nul past the end of the destination [-Wformat-overflow=]
   sprintf(str, "2000-1-1%d\n", j);
                ^~~~~~~~~~~~~~
array.pgc:43:3: note: ‘sprintf’ output between 11 and 21 bytes into a destination of size 20
   sprintf(str, "2000-1-1%d\n", j);
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

They coming from src/interfaces/ecpg tests ( ./src/interfaces/ecpg/test/sql/array.pgc ).
Seems this code is 4 year old but I did not found discussion related to such compiler warnings. Is this expected?

regards, Sergei


Reply | Threaded
Open this post in threaded view
|

Re: complier warnings from ecpg tests

Michael Paquier-2
On Thu, Jul 11, 2019 at 03:21:15PM +0300, Sergei Kornilov wrote:
> I noticed few warnings from my compiler (gcc version 8.3.0 (Debian
> 8.3.0-6)) during make check-world:
>
> They coming from src/interfaces/ecpg tests (
> ./src/interfaces/ecpg/test/sql/array.pgc ).
> Seems this code is 4 year old but I did not found discussion related
> to such compiler warnings. Is this expected?

Are you using -Wformat-overflow?  At which level?
--
Michael

signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: complier warnings from ecpg tests

Sergei Kornilov
Hi

> Are you using -Wformat-overflow? At which level?

I use: ./configure --prefix=somepath --enable-cassert --enable-debug CFLAGS="-ggdb -Og -g3 -fno-omit-frame-pointer" --enable-tap-tests
No other explicit options.

pg_config reports:

CPPFLAGS = -D_GNU_SOURCE
CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -ggdb -Og -g3 -fno-omit-frame-pointer
CFLAGS_SL = -fPIC

regards, Sergei