[Tarantool-patches] [PATCH] test: fix warning for old gcc at testgetmetrics.c
Alexander V. Tikhonov
avtikhon at tarantool.org
Tue Oct 20 18:17:49 MSK 2020
Hi Sergey, thanks for the patch. I've checked your fix and it really
helped with building using gcc-4.8.5 with Werror flag [1]. Also no new
degradations occurred [2]. Patch LGTM.
[1] - https://gitlab.com/tarantool/tarantool/-/jobs/801762908
[2] - https://gitlab.com/tarantool/tarantool/-/pipelines/205243134
On Tue, Oct 20, 2020 at 03:59:10PM +0300, Sergey Kaplun wrote:
> Sergos, Igor,
>
> Thanks for the review!
>
> On 20.10.20, Sergey Ostanevich wrote:
> > Hi!
> >
> > The patch is LGTM, wording in the commit message still needs updates
> > (the latest branch log below).
> >
> > Sergos
> >
> > > commit 7a4c686e61bb70defe56e4e823ae09ce98c8dc04 (HEAD -> skaplun/gh-5187-old-gcc-warning, origin/skaplun/gh-5187-old-gcc-warning)
> > > Author: Sergey Kaplun <skaplun at tarantool.org>
> > > Date: Sat Oct 17 09:13:07 2020 +0300
> > >
> > > test: fix warning for old gcc at testgetmetrics.c
> > >
> > > This patch fixes the regression introduced in scope of
> > > 5a61e1ab54b5c66bfebd836db1ac47996611e065 ('misc: add C and Lua
> > > API for platform metrics').
> > >
> > > Old gcc compiler (gcc-4.8.5-39) throws warnings like:
> > > "error: comparison is always true due to limited range of data type
> > > [-Werror=type-limits]", when you cast syze_t value to ssyze_t type and
> >
> > size instead of syze
>
> Thanks, fixed!
>
> >
> > > compare its to >= 0. This leads to failing compilation with -Werror
> >
> > compare it, not its
>
> Thanks, fixed.
>
> >
> > > flag.
> > >
> > > Taking into account that this base test check only API format, not
> > > values by themself, it will be enough to use (void) construction here.
> >
> > by themself -> themselves
>
> Thanks, fixed!
>
> >
> > >
> > > Follows up tarantool/tarantool#5187
> > >
> >
>
> So, new commit message is:
>
> ===================================================================
> test: fix warning for old gcc at testgetmetrics.c
>
> This patch fixes the regression introduced in scope of
> 5a61e1ab54b5c66bfebd836db1ac47996611e065 ('misc: add C and Lua
> API for platform metrics').
>
> Old gcc compiler (gcc-4.8.5-39) throws warnings like:
> "error: comparison is always true due to limited range of data type
> [-Werror=type-limits]", when you cast size_t value to ssize_t type and
> compare it to >= 0. This leads to failing compilation with -Werror
> flag.
>
> Taking into account that this base test checks only API format, not
> values by themselves, it will be enough to use (void) construction here.
>
> Follows up tarantool/tarantool#5187
> ===================================================================
>
> Also updated comment. See iterative patch below. Branch is force
> pushed.
>
> ===================================================================
> diff --git a/test/misclib-getmetrics-capi/testgetmetrics.c b/test/misclib-getmetrics-capi/testgetmetrics.c
> index fc19680..7fd3eef 100644
> --- a/test/misclib-getmetrics-capi/testgetmetrics.c
> +++ b/test/misclib-getmetrics-capi/testgetmetrics.c
> @@ -12,7 +12,7 @@ static int base(lua_State *L)
> struct luam_Metrics metrics;
> luaM_metrics(L, &metrics);
>
> - /* Just check API, not values by itself. */
> + /* Just check structure format, not values that fields contain. */
> (void)metrics.strhash_hit;
> (void)metrics.strhash_miss;
>
> ===================================================================
>
> --
> Best regards,
> Sergey Kaplun
More information about the Tarantool-patches
mailing list