Skip to content

[1.15.7 and 1.15.8] fails to build on i386: passing argument 1 of 'gmtime_r' from incompatible pointer type #1384

@paulgevers

Description

@paulgevers

Recently liferea started to fail to build from source in Debian on i386 [1]. I suspect this is related to default changes in gcc (we're now using gcc-14) and I think I can work around this for now by preventing that warning to be treated as an error, but I'd like to let you know.

[1] https://tests.reproducible-builds.org/debian/rb-pkg/unstable/i386/liferea.html

gcc -DHAVE_CONFIG_H -I. -I../..  -DPACKAGE_DATA_DIR=\""/usr/share"\" -DPACKAGE_LIB_DIR=\""/usr/lib/i386-linux-gnu/liferea"\" -DPACKAGE_LOCALE_DIR=\""/usr/share/locale"\" -DBIN_DIR=\""/usr/bin"\" -I../../src -I../.. -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/i386-linux-gnu -I/usr/include/webp -I/usr/include/gio-unix-2.0 -I/usr/include/cloudproviders -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -I/usr/include/libxml2 -I/usr/include/libsoup-3.0 -I/usr/include/webkitgtk-4.1 -I/usr/include/json-glib-1.0 -I/usr/include/gobject-introspection-1.0 -I/usr/include/gsettings-desktop-schemas -I/usr/include/libpeas-1.0 -pthread  -DHAVE_G_MEMDUP2 -DHAVE_G_TIME_ZONE_NEW_IDENTIFIER -I/usr/include/gobject-introspection-1.0 -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/liferea-1.15.7=. -fstack-protector-strong -Wformat -Werror=format-security -c -o ../db.o ../db.c
../date.c: In function 'date_format_rfc822_en_gmt':
../date.c:485:19: error: passing argument 1 of 'gmtime_r' from incompatible pointer type [-Wincompatible-pointer-types]
  485 |         gmtime_r (&datetime, &dt);
      |                   ^~~~~~~~~
      |                   |
      |                   gint64 * {aka long long int *}
In file included from /usr/include/glib-2.0/glib/gtypes.h:41,
                 from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from ../date.h:24,
                 from ../date.c:35:
/usr/include/time.h:154:54: note: expected 'const time_t * restrict' {aka 'const long int * restrict'} but argument is of type 'gint64 *' {aka 'long long int *'}
  154 | extern struct tm *gmtime_r (const time_t *__restrict __timer,
      |                             ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
make[5]: *** [Makefile:582: ../date.o] Error 1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions