D: [iurt_root_command] chroot
Building target platforms: x86_64
Building for target x86_64
Installing /home/pterjan/rpmbuild/SRPMS/linkx-2.2-28.mga10.src.rpm
Executing(%mkbuilddir): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.d6y9jU
Executing(%prep): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.dEQf5l
+ umask 022
+ cd /home/pterjan/rpmbuild/BUILD/linkx-2.2-build
+ '[' 1 -eq 1 ']'
+ '[' 1 -eq 1 ']'
+ '[' 1 -eq 1 ']'
+ cd /home/pterjan/rpmbuild/BUILD/linkx-2.2-build
+ rm -rf linkx/linkx
+ /usr/lib/rpm/rpmuncompress -x /home/pterjan/rpmbuild/SOURCES/linkx.tar.gz
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd linkx/linkx
+ /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ /usr/lib/rpm/rpmuncompress /home/pterjan/rpmbuild/SOURCES/linkx-libpng15.patch
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ /usr/lib/rpm/rpmuncompress /home/pterjan/rpmbuild/SOURCES/linkx-fix-png-crash.diff
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ /usr/lib/rpm/rpmuncompress /home/pterjan/rpmbuild/SOURCES/linkx-openssl11.patch
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ /usr/lib/rpm/rpmuncompress /home/pterjan/rpmbuild/SOURCES/linkx-autoconf.patch
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ /usr/lib/rpm/rpmuncompress /home/pterjan/rpmbuild/SOURCES/fix-build-with-gcc-14.patch
+ /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f
+ RPM_EC=0
++ jobs -p
+ exit 0
Executing(%build): /bin/sh -e /home/pterjan/rpmbuild/tmp/rpm-tmp.Awvxi2
+ umask 022
+ cd /home/pterjan/rpmbuild/BUILD/linkx-2.2-build
+ CFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full'
+ export CFLAGS
+ CXXFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full'
+ export CXXFLAGS
+ FFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full '
+ export FFLAGS
+ FCFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full '
+ export FCFLAGS
+ VALAFLAGS=-g
+ export VALAFLAGS
+ RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn'
+ export RUSTFLAGS
+ LDFLAGS='-Wl,--as-needed -Wl,--no-undefined -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--build-id=sha1 -Wl,--enable-new-dtags -specs=/usr/lib/rpm/redhat/redhat-hardened-ld'
+ export LDFLAGS
+ LT_SYS_LIBRARY_PATH=/usr/lib64:
+ export LT_SYS_LIBRARY_PATH
+ CC=gcc
+ export CC
+ CXX=g++
+ export CXX
+ cd linkx/linkx
+ '[' 1 -eq 1 ']'
+ '[' 1 -eq 1 ']'
+ autoreconf -fi
autoreconf: warning: autoconf input should be named 'configure.ac', not 'configure.in'
aclocal: warning: autoconf input should be named 'configure.ac', not 'configure.in'
configure.in:8: warning: AM_INIT_AUTOMAKE: two- and three-arguments forms are deprecated.
./lib/autoconf/general.m4:2434: AC_DIAGNOSE is expanded from...
aclocal.m4:782: AM_INIT_AUTOMAKE is expanded from...
configure.in:8: the top level
configure.in:75: warning: 'AM_CONFIG_HEADER': this macro is obsolete.
configure.in:75: You should use the 'AC_CONFIG_HEADERS' macro instead.
aclocal.m4:1060: AM_CONFIG_HEADER is expanded from...
configure.in:75: the top level
configure.in:90: warning: The macro 'AC_HEADER_STDC' is obsolete.
configure.in:90: You should run autoupdate.
./lib/autoconf/headers.m4:663: AC_HEADER_STDC is expanded from...
configure.in:90: the top level
configure.in:91: warning: The macro 'AC_PROG_GCC_TRADITIONAL' is obsolete.
configure.in:91: You should run autoupdate.
./lib/autoconf/c.m4:1676: AC_PROG_GCC_TRADITIONAL is expanded from...
configure.in:91: the top level
configure.in:95: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body
./lib/autoconf/lang.m4:199: AC_LANG_CONFTEST is expanded from...
./lib/autoconf/general.m4:2821: _AC_COMPILE_IFELSE is expanded from...
./lib/autoconf/general.m4:2837: AC_COMPILE_IFELSE is expanded from...
configure.in:95: the top level
configure.in:96: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body
./lib/autoconf/lang.m4:199: AC_LANG_CONFTEST is expanded from...
./lib/autoconf/general.m4:2821: _AC_COMPILE_IFELSE is expanded from...
./lib/autoconf/general.m4:2837: AC_COMPILE_IFELSE is expanded from...
configure.in:96: the top level
configure.in:97: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body
./lib/autoconf/lang.m4:199: AC_LANG_CONFTEST is expanded from...
./lib/autoconf/general.m4:2821: _AC_COMPILE_IFELSE is expanded from...
./lib/autoconf/general.m4:2837: AC_COMPILE_IFELSE is expanded from...
configure.in:97: the top level
configure.in:101: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body
./lib/autoconf/lang.m4:199: AC_LANG_CONFTEST is expanded from...
./lib/autoconf/general.m4:2821: _AC_COMPILE_IFELSE is expanded from...
./lib/autoconf/general.m4:2837: AC_COMPILE_IFELSE is expanded from...
configure.in:101: the top level
configure.in:102: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body
./lib/autoconf/lang.m4:199: AC_LANG_CONFTEST is expanded from...
./lib/autoconf/general.m4:2821: _AC_COMPILE_IFELSE is expanded from...
./lib/autoconf/general.m4:2837: AC_COMPILE_IFELSE is expanded from...
configure.in:102: the top level
configure.in:108: warning: The macro 'AC_TRY_COMPILE' is obsolete.
configure.in:108: You should run autoupdate.
./lib/autoconf/general.m4:2845: AC_TRY_COMPILE is expanded from...
configure.in:108: the top level
configure.in:115: warning: The macro 'AC_TRY_COMPILE' is obsolete.
configure.in:115: You should run autoupdate.
./lib/autoconf/general.m4:2845: AC_TRY_COMPILE is expanded from...
configure.in:115: the top level
configure.in:121: warning: The macro 'AC_TRY_COMPILE' is obsolete.
configure.in:121: You should run autoupdate.
./lib/autoconf/general.m4:2845: AC_TRY_COMPILE is expanded from...
configure.in:121: the top level
configure.in:151: warning: The macro 'AC_TRY_COMPILE' is obsolete.
configure.in:151: You should run autoupdate.
./lib/autoconf/general.m4:2845: AC_TRY_COMPILE is expanded from...
configure.in:151: the top level
configure.in:163: warning: The macro 'AC_HEADER_TIME' is obsolete.
configure.in:163: You should run autoupdate.
./lib/autoconf/headers.m4:702: AC_HEADER_TIME is expanded from...
configure.in:163: the top level
configure.in:182: warning: The macro 'AC_TRY_RUN' is obsolete.
configure.in:182: You should run autoupdate.
./lib/autoconf/general.m4:2995: AC_TRY_RUN is expanded from...
configure.in:182: the top level
configure.in:193: warning: The macro 'AC_TRY_RUN' is obsolete.
configure.in:193: You should run autoupdate.
./lib/autoconf/general.m4:2995: AC_TRY_RUN is expanded from...
configure.in:193: the top level
configure.in:212: warning: The macro 'AC_TRY_RUN' is obsolete.
configure.in:212: You should run autoupdate.
./lib/autoconf/general.m4:2995: AC_TRY_RUN is expanded from...
configure.in:212: the top level
configure.in:236: warning: The macro 'AC_TYPE_SIGNAL' is obsolete.
configure.in:236: You should run autoupdate.
./lib/autoconf/types.m4:805: AC_TYPE_SIGNAL is expanded from...
configure.in:236: the top level
configure.in:239: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:239: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:239: the top level
configure.in:240: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:240: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:240: the top level
configure.in:241: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:241: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:241: the top level
configure.in:242: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:242: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:242: the top level
configure.in:243: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:243: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:243: the top level
configure.in:244: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:244: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:244: the top level
configure.in:245: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:245: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:245: the top level
configure.in:246: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:246: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:246: the top level
configure.in:247: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:247: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:247: the top level
configure.in:248: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:248: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:248: the top level
configure.in:249: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:249: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:249: the top level
configure.in:250: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:250: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:250: the top level
configure.in:251: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:251: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:251: the top level
configure.in:255: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.in:255: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
configure.in:255: the top level
configure.in:262: warning: The macro 'AC_ERROR' is obsolete.
configure.in:262: You should run autoupdate.
./lib/autoconf/oldnames.m4:34: AC_ERROR is expanded from...
configure.in:262: the top level
configure.in:265: warning: The macro 'AC_ERROR' is obsolete.
configure.in:265: You should run autoupdate.
./lib/autoconf/oldnames.m4:34: AC_ERROR is expanded from...
configure.in:265: the top level
configure.in:278: warning: The macro 'AC_ERROR' is obsolete.
configure.in:278: You should run autoupdate.
./lib/autoconf/oldnames.m4:34: AC_ERROR is expanded from...
configure.in:278: the top level
configure.in:295: warning: The macro 'AC_ERROR' is obsolete.
configure.in:295: You should run autoupdate.
./lib/autoconf/oldnames.m4:34: AC_ERROR is expanded from...
configure.in:295: the top level
configure.in:305: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:305: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:305: the top level
configure.in:317: warning: The macro 'AC_ERROR' is obsolete.
configure.in:317: You should run autoupdate.
./lib/autoconf/oldnames.m4:34: AC_ERROR is expanded from...
configure.in:317: the top level
configure.in:378: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.in:378: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
configure.in:378: the top level
configure.in:395: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:395: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:395: the top level
configure.in:396: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:396: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:396: the top level
configure.in:408: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.in:408: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
configure.in:408: the top level
configure.in:411: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.in:411: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
configure.in:411: the top level
configure.in:436: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.in:436: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
configure.in:436: the top level
configure.in:438: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.in:438: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
configure.in:438: the top level
configure.in:450: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.in:450: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
configure.in:450: the top level
configure.in:452: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.in:452: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
configure.in:452: the top level
configure.in:514: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.in:514: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
configure.in:514: the top level
configure.in:597: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.in:597: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
configure.in:597: the top level
configure.in:655: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:655: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:655: the top level
configure.in:660: warning: The macro 'AC_ERROR' is obsolete.
configure.in:660: You should run autoupdate.
./lib/autoconf/oldnames.m4:34: AC_ERROR is expanded from...
configure.in:660: the top level
configure.in:663: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:663: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:663: the top level
configure.in:664: warning: The macro 'AC_HAVE_FUNCS' is obsolete.
configure.in:664: You should run autoupdate.
./lib/autoconf/functions.m4:230: AC_HAVE_FUNCS is expanded from...
configure.in:664: the top level
configure.in:673: warning: The macro 'AC_ERROR' is obsolete.
configure.in:673: You should run autoupdate.
./lib/autoconf/oldnames.m4:34: AC_ERROR is expanded from...
configure.in:673: the top level
configure.in:677: warning: The macro 'AC_TRY_COMPILE' is obsolete.
configure.in:677: You should run autoupdate.
./lib/autoconf/general.m4:2845: AC_TRY_COMPILE is expanded from...
configure.in:677: the top level
configure.in:722: warning: AC_OUTPUT should be used without arguments.
configure.in:722: You should run autoupdate.
autoheader: warning: autoconf input should be named 'configure.ac', not 'configure.in'
autoheader: warning: WARNING: Using auxiliary files such as 'acconfig.h', 'config.h.bot'
autoheader: WARNING: and 'config.h.top', to define templates for 'config.h.in'
autoheader: WARNING: is deprecated and discouraged.
autoheader: 
autoheader: WARNING: Using the third argument of 'AC_DEFINE_UNQUOTED' and
autoheader: WARNING: 'AC_DEFINE' allows one to define a template without
autoheader: WARNING: 'acconfig.h':
autoheader: 
autoheader: WARNING:   AC_DEFINE([NEED_FUNC_MAIN], 1,
autoheader: 		[Define if a function 'main' is needed.])
autoheader: 
autoheader: WARNING: More sophisticated templates can also be produced, see the
autoheader: WARNING: documentation.
automake: warning: autoconf input should be named 'configure.ac', not 'configure.in'
configure.in:8: warning: AM_INIT_AUTOMAKE: two- and three-arguments forms are deprecated.  For more info, see:
configure.in:8: https://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_005fINIT_005fAUTOMAKE-invocation
configure.in:78: installing './compile'
Makefile.am: installing './depcomp'
automake: warning: autoconf input should be named 'configure.ac', not 'configure.in'
+ CFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full'
+ export CFLAGS
+ CXXFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full'
+ export CXXFLAGS
+ FFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full '
+ export FFLAGS
+ FCFLAGS='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full '
+ export FCFLAGS
+ VALAFLAGS=-g
+ export VALAFLAGS
+ RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none --cap-lints=warn'
+ export RUSTFLAGS
+ LDFLAGS='-Wl,--as-needed -Wl,--no-undefined -Wl,-z,relro -Wl,-z,now -Wl,-O1 -Wl,--build-id=sha1 -Wl,--enable-new-dtags -specs=/usr/lib/rpm/redhat/redhat-hardened-ld'
+ export LDFLAGS
+ LT_SYS_LIBRARY_PATH=/usr/lib64:
+ export LT_SYS_LIBRARY_PATH
+ CC=gcc
+ export CC
+ CXX=g++
+ export CXX
+ CONFIGURE_TOP=.
+ '[' 1 = 1 ']'
++ find . -name config.guess -o -name config.sub
+ for i in $(find ${CONFIGURE_TOP} -name config.guess -o -name config.sub)
++ basename ./config.guess
+ '[' -f /usr/lib/rpm/mageia/config.guess ']'
++ basename ./config.guess
+ cp -af /usr/lib/rpm/mageia/config.guess ./config.guess
+ for i in $(find ${CONFIGURE_TOP} -name config.guess -o -name config.sub)
++ basename ./config.sub
+ '[' -f /usr/lib/rpm/mageia/config.sub ']'
++ basename ./config.sub
+ cp -af /usr/lib/rpm/mageia/config.sub ./config.sub
+ /usr/lib/rpm/mageia/force-as-needed-for-shared-lib-in-libtool
Forcing -Wl,--as-needed in configure/libtool to workaround libtool bug (cf http://lists.gnu.org/archive/html/libtool-patches/2004-06/msg00002.html)
+ /usr/lib/rpm/mageia/drop-ld-no-undefined-for-shared-lib-modules-in-libtool
+ /usr/lib/rpm/mageia/fix-libtool-ltmain-from-overlinking
+ /usr/lib/rpm/mageia/fix-libtool-from-moving-options-after-libs .
+ /usr/lib/rpm/mageia/fix-dlsearch-path-in-libtool-for-multilib . lib64
+ ./configure --host=x86_64-mageia-linux-gnu --build=x86_64-mageia-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-graphics --enable-javascript
configure: WARNING: unrecognized options: --enable-javascript
checking for a BSD-compatible install... /usr/bin/install -c
checking whether sleep supports fractional seconds... yes
checking filesystem timestamp resolution... 0.01
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking xargs -n works... yes
checking for x86_64-mageia-linux-gnu-gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking whether make supports the include directive... yes (GNU style)
checking dependency style of gcc... none
checking whether the compiler supports GNU C++... yes
checking whether g++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking dependency style of g++... none
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for sys/time.h... yes
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking if compiler flag -Wall works... yes
checking if compiler flag -W works... yes
checking if compiler flag -Wextra works... yes
checking if compiler flag -Wno-unused works... yes
checking if compiler flag -Wno-pointer-sign works... yes
checking for EMX... no
checking for typeof... yes
checking for long long... yes
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for sys/wait.h that is POSIX.1 compatible... yes
checking for fcntl.h... yes
checking for limits.h... yes
checking for sys/ioctl.h... yes
checking for sys/time.h... (cached) yes
checking for time.h... yes
checking for unistd.h... (cached) yes
checking for math.h... yes
checking for ieee.h... no
checking for endian.h... yes
checking for values.h... yes
checking for sigaction.h... no
checking for netinet/in_systm.h... yes
checking for netinet/in_system.h... no
checking for netinet/ip.h... yes
checking for netinet/dhcp.h... no
checking for sys/select.h... yes
checking for sys/resource.h... yes
checking for sys/utsname.h... yes
checking for sys/un.h... yes
checking for sys/fmutex.h... no
checking for sys/cygwin.h... no
checking for io.h... no
checking for setjmp.h... yes
checking for langinfo.h... yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for size_t... yes
checking for socklen_t... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking size of short... 2
checking size of unsigned short... 2
checking size of int... 4
checking size of unsigned... 4
checking size of long... 8
checking size of unsigned long... 8
checking for big endian... no
checking for little endian... yes
checking if rename can replace existing files... yes
checking for working memcmp... yes
checking return type of signal handlers... void
checking for strftime... yes
checking for vprintf... yes
checking for calloc... yes
checking for snprintf... yes
checking for memmove... yes
checking for raise... yes
checking for gettimeofday... yes
checking for mkdir... yes
checking for select... yes
checking for strcspn... yes
checking for strerror... yes
checking for strstr... yes
checking for strtol... yes
checking for strtoul... yes
checking for strtoq... yes
checking for strtoll... yes
checking for chmod... yes
checking for getpid... yes
checking for setpgid... yes
checking for popen... yes
checking for uname... yes
checking for getpagesize... yes
checking for tempnam... yes
checking for strptime... yes
checking for setlocale... yes
checking for nl_langinfo... yes
checking for sigsetjmp/siglongjmp... yes
checking for atan in -lm... yes
checking for socket... yes
checking for setsockopt... yes
checking for gethostbyname... yes
checking for gethostbyaddr... yes
checking for dhcp_option... no
checking for herror... yes
checking for cfmakeraw... yes
checking for cygwin_conv_to_full_win32_path... no
checking for requested debug level... 0
checking if you want to use graphics... yes
checking for Gpm_Open in -lgpm... yes
checking for gpm.h... yes
checking for OS/2 threads... no
checking for atheos/threads.h... no
checking for spawn_thread... no
checking for resume_thread... no
checking for MouOpen... no
checking for _read_kbd... no
checking for XFree for OS/2... no
checking for dlopen in -ldl... yes
checking for x86_64-mageia-linux-gnu-pkg-config... /usr/bin/x86_64-mageia-linux-gnu-pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for openssl... yes
checking for OpenSSL... yes
checking for zlib.h... yes
checking for inflate in -lz... yes
checking for bzlib.h... yes
checking for BZ2_bzDecompress in -lbz2... yes
checking for svgalib... no
checking for linux/fb.h... yes
checking for linux/kd.h... yes
checking for linux/vt.h... yes
checking for sys/mman.h... yes
checking for directfb-config... no
checking how to run the C preprocessor... gcc -E
checking for X... libraries , headers 
checking for pmshell... no
checking for gui/view.h... no
checking for gui/window.h... no
checking for gui/desktop.h... no
checking for gui/bitmap.h... no
checking for util/locker.h... no
checking for util/application.h... no
checking for inflate in -lz... (cached) yes
checking for libpng >= 1.0.0... yes
checking for png.h... yes
checking for libpng/png.h... no
checking for png_create_info_struct... yes
checking for png_set_rgb_to_gray... yes
checking for png_get_image_width... yes
checking for png_get_image_height... yes
checking for png_get_gAMA... yes
checking for png_get_color_type... yes
checking for png_get_bit_depth... yes
checking for png_set_strip_alpha... yes
checking for png_get_valid... yes
checking for png_get_sRGB... yes
checking if you can include both setjmp.h and png.h... yes
checking for jpeglib.h... yes
checking for jpeg_destroy_decompress in -ljpeg... yes
checking for tiffio.h... yes
checking for TIFFClientOpen in -ltiff... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
configure: WARNING: unrecognized options: --enable-javascript
---------------------------------------------------------
Configuration results:

GPM support:		YES
SSL support:		YES
Supported compression:	ZLIB BZIP2
Graphics enabled:	YES
Graphics drivers:	FB X
Image formats:		GIF PNG XBM JPEG TIFF
---------------------------------------------------------
+ /usr/bin/make -O -j16 V=1 VERBOSE=1
/usr/bin/make  all-am
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o beos.o beos.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o directfb.o directfb.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o error.o error.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o af_unix.o af_unix.c
af_unix.c: In function 'bind_to_af_unix':
af_unix.c:113:43: warning: passing argument 2 to 'restrict'-qualified parameter aliases with arguments 3, 4 [-Wrestrict]
  113 |                                 select(0, &dummy, &dummy, &dummy, &tv);
      |                                           ^~~~~~  ~~~~~~  ~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o dns.o dns.c
dns.c: In function 'lookup_fn':
dns.c:89:9: warning: ignoring return value of 'write' declared with attribute 'warn_unused_result' [-Wunused-result]
   89 |         write(h, &host, sizeof(ip__address));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from dns.c:6:
dns.c: In function 'find_in_dns_cache':
links.h:718:67: warning: array subscript 'struct dnsentry[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
dns.c:157:25: note: in expansion of macro 'add_to_list'
  157 |                         add_to_list(dns_cache, e);
      |                         ^~~~~~~~~~~
dns.c:35:18: note: object 'dns_cache' of size 16
   35 | struct list_head dns_cache = {&dns_cache, &dns_cache};
      |                  ^~~~~~~~~
links.h:718:93: warning: array subscript 'struct dnsentry[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
dns.c:157:25: note: in expansion of macro 'add_to_list'
  157 |                         add_to_list(dns_cache, e);
      |                         ^~~~~~~~~~~
dns.c:35:18: note: object 'dns_cache' of size 16
   35 | struct list_head dns_cache = {&dns_cache, &dns_cache};
      |                  ^~~~~~~~~
In function 'end_dns_lookup',
    inlined from 'end_dns_lookup' at dns.c:164:6:
links.h:718:67: warning: array subscript 'struct dnsentry[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                ~~~^~~~~~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
dns.c:194:9: note: in expansion of macro 'add_to_list'
  194 |         add_to_list(dns_cache, dnsentry);
      |         ^~~~~~~~~~~
dns.c: In function 'end_dns_lookup':
dns.c:35:18: note: object 'dns_cache' of size 16
   35 | struct list_head dns_cache = {&dns_cache, &dns_cache};
      |                  ^~~~~~~~~
In function 'end_dns_lookup',
    inlined from 'end_dns_lookup' at dns.c:164:6:
links.h:718:99: warning: array subscript 'struct dnsentry[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                          ~~~~~~~~~^~~~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
dns.c:194:9: note: in expansion of macro 'add_to_list'
  194 |         add_to_list(dns_cache, dnsentry);
      |         ^~~~~~~~~~~
dns.c: In function 'end_dns_lookup':
dns.c:35:18: note: object 'dns_cache' of size 16
   35 | struct list_head dns_cache = {&dns_cache, &dns_cache};
      |                  ^~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o block.o block.c
block.c: In function 'block_add_URL':
block.c:309:131: warning: cast between incompatible function types from 'void * (*)(void *, unsigned char *)' to 'void (*)(void *, unsigned char *)' [-Wcast-function-type]
  309 |         input_field(ses->term, NULL, TEXT(T_BLOCK_URL) , TEXT(T_BLOCK_ADD), ses, 0, MAX_INPUT_URL_LEN, u, 0, 0, NULL, TEXT(T_OK), (void (*)(void *, unsigned char *)) block_add_URL_fn, TEXT(T_CANCEL), NULL, NULL);
      |                                                                                                                                   ^
In file included from /usr/include/string.h:548,
                 from links.h:55,
                 from block.c:1:
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'block_type_item' at block.c:89:6:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o connect.o connect.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o drivers.o drivers.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o finger.o finger.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o cache.o cache.c
In file included from cache.c:6:
cache.c: In function 'find_in_cache':
links.h:718:67: warning: array subscript 'struct cache_entry[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
cache.c:57:17: note: in expansion of macro 'add_to_list'
   57 |                 add_to_list(cache, e);
      |                 ^~~~~~~~~~~
cache.c:8:18: note: object 'cache' of size 16
    8 | struct list_head cache = {&cache, &cache};
      |                  ^~~~~
links.h:718:93: warning: array subscript 'struct cache_entry[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
cache.c:57:17: note: in expansion of macro 'add_to_list'
   57 |                 add_to_list(cache, e);
      |                 ^~~~~~~~~~~
cache.c:8:18: note: object 'cache' of size 16
    8 | struct list_head cache = {&cache, &cache};
      |                  ^~~~~
cache.c: In function 'get_cache_entry':
links.h:718:67: warning: array subscript 'struct cache_entry[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
cache.c:83:9: note: in expansion of macro 'add_to_list'
   83 |         add_to_list(cache, e);
      |         ^~~~~~~~~~~
cache.c:8:18: note: object 'cache' of size 16
    8 | struct list_head cache = {&cache, &cache};
      |                  ^~~~~
links.h:718:93: warning: array subscript 'struct cache_entry[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
cache.c:83:9: note: in expansion of macro 'add_to_list'
   83 |         add_to_list(cache, e);
      |         ^~~~~~~~~~~
cache.c:8:18: note: object 'cache' of size 16
    8 | struct list_head cache = {&cache, &cache};
      |                  ^~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o auth.o auth.c
In file included from auth.c:1:
auth.c: In function 'add_auth':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
auth.c:215:9: note: in expansion of macro 'add_to_list'
  215 |         add_to_list(auth, a);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
auth.c:215:9: note: in expansion of macro 'add_to_list'
  215 |         add_to_list(auth, a);
      |         ^~~~~~~~~~~
auth.c: In function 'find_auth':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
auth.c:233:17: note: in expansion of macro 'add_to_list'
  233 |                 add_to_list(auth, a);
      |                 ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
auth.c:233:17: note: in expansion of macro 'add_to_list'
  233 |                 add_to_list(auth, a);
      |                 ^~~~~~~~~~~
auth.c: In function 'add_auth':
links.h:718:67: warning: array subscript 'struct http_auth[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
auth.c:215:9: note: in expansion of macro 'add_to_list'
  215 |         add_to_list(auth, a);
      |         ^~~~~~~~~~~
auth.c:3:18: note: object 'auth' of size 16
    3 | struct list_head auth = {&auth, &auth};
      |                  ^~~~
links.h:718:93: warning: array subscript 'struct http_auth[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
auth.c:215:9: note: in expansion of macro 'add_to_list'
  215 |         add_to_list(auth, a);
      |         ^~~~~~~~~~~
auth.c:3:18: note: object 'auth' of size 16
    3 | struct list_head auth = {&auth, &auth};
      |                  ^~~~
auth.c: In function 'find_auth':
links.h:718:67: warning: array subscript 'struct http_auth[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
auth.c:233:17: note: in expansion of macro 'add_to_list'
  233 |                 add_to_list(auth, a);
      |                 ^~~~~~~~~~~
auth.c:3:18: note: object 'auth' of size 16
    3 | struct list_head auth = {&auth, &auth};
      |                  ^~~~
links.h:718:93: warning: array subscript 'struct http_auth[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
auth.c:233:17: note: in expansion of macro 'add_to_list'
  233 |                 add_to_list(auth, a);
      |                 ^~~~~~~~~~~
auth.c:3:18: note: object 'auth' of size 16
    3 | struct list_head auth = {&auth, &auth};
      |                  ^~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o font_include.o font_include.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o cookies.o cookies.c
In file included from cookies.c:7:
cookies.c: In function 'add_cookie_block':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
cookies.c:57:9: note: in expansion of macro 'add_to_list'
   57 |         add_to_list(cookie_blocks, cb);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
cookies.c:57:9: note: in expansion of macro 'add_to_list'
   57 |         add_to_list(cookie_blocks, cb);
      |         ^~~~~~~~~~~
cookies.c: In function 'load_cookies':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
cookies.c:117:25: note: in expansion of macro 'add_to_list'
  117 |                         add_to_list(cookies, c);
      |                         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
cookies.c:117:25: note: in expansion of macro 'add_to_list'
  117 |                         add_to_list(cookies, c);
      |                         ^~~~~~~~~~~
cookies.c: In function 'accept_cookie':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
cookies.c:256:9: note: in expansion of macro 'add_to_list'
  256 |         add_to_list(cookies, c);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
cookies.c:256:9: note: in expansion of macro 'add_to_list'
  256 |         add_to_list(cookies, c);
      |         ^~~~~~~~~~~
cookies.c: In function 'add_cookie_block':
links.h:718:67: warning: array subscript 'struct cookie_block[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
cookies.c:57:9: note: in expansion of macro 'add_to_list'
   57 |         add_to_list(cookie_blocks, cb);
      |         ^~~~~~~~~~~
cookies.c:20:18: note: object 'cookie_blocks' of size 16
   20 | struct list_head cookie_blocks = { &cookie_blocks, &cookie_blocks };
      |                  ^~~~~~~~~~~~~
links.h:718:93: warning: array subscript 'struct cookie_block[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
cookies.c:57:9: note: in expansion of macro 'add_to_list'
   57 |         add_to_list(cookie_blocks, cb);
      |         ^~~~~~~~~~~
cookies.c:20:18: note: object 'cookie_blocks' of size 16
   20 | struct list_head cookie_blocks = { &cookie_blocks, &cookie_blocks };
      |                  ^~~~~~~~~~~~~
In file included from /usr/include/string.h:548,
                 from links.h:55:
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'save_cookies' at cookies.c:75:28:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
cookies.c: In function 'load_cookies':
links.h:718:67: warning: array subscript 'struct cookie[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
cookies.c:117:25: note: in expansion of macro 'add_to_list'
  117 |                         add_to_list(cookies, c);
      |                         ^~~~~~~~~~~
cookies.c:17:18: note: object 'cookies' of size 16
   17 | struct list_head cookies = { &cookies, &cookies };
      |                  ^~~~~~~
links.h:718:93: warning: array subscript 'struct cookie[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
cookies.c:117:25: note: in expansion of macro 'add_to_list'
  117 |                         add_to_list(cookies, c);
      |                         ^~~~~~~~~~~
cookies.c:17:18: note: object 'cookies' of size 16
   17 | struct list_head cookies = { &cookies, &cookies };
      |                  ^~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'load_cookies' at cookies.c:99:28:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
cookies.c: In function 'accept_cookie':
links.h:718:67: warning: array subscript 'struct cookie[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
cookies.c:256:9: note: in expansion of macro 'add_to_list'
  256 |         add_to_list(cookies, c);
      |         ^~~~~~~~~~~
cookies.c:17:18: note: object 'cookies' of size 16
   17 | struct list_head cookies = { &cookies, &cookies };
      |                  ^~~~~~~
links.h:718:93: warning: array subscript 'struct cookie[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
cookies.c:256:9: note: in expansion of macro 'add_to_list'
  256 |         add_to_list(cookies, c);
      |         ^~~~~~~~~~~
cookies.c:17:18: note: object 'cookies' of size 16
   17 | struct list_head cookies = { &cookies, &cookies };
      |                  ^~~~~~~
links.h:718:67: warning: array subscript 'struct c_domain[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
cookies.c:260:9: note: in expansion of macro 'add_to_list'
  260 |         add_to_list(c_domains, cd);
      |         ^~~~~~~~~~~
cookies.c:19:18: note: object 'c_domains' of size 16
   19 | struct list_head c_domains = { &c_domains, &c_domains };
      |                  ^~~~~~~~~
links.h:718:93: warning: array subscript 'struct c_domain[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
cookies.c:260:9: note: in expansion of macro 'add_to_list'
  260 |         add_to_list(c_domains, cd);
      |         ^~~~~~~~~~~
cookies.c:19:18: note: object 'c_domains' of size 16
   19 | struct list_head c_domains = { &c_domains, &c_domains };
      |                  ^~~~~~~~~
cookies.c: In function 'cookie_default':
links.h:718:67: warning: array subscript 'struct c_server[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
cookies.c:302:9: note: in expansion of macro 'add_to_list'
  302 |         add_to_list(c_servers, s);
      |         ^~~~~~~~~~~
cookies.c:29:18: note: object 'c_servers' of size 16
   29 | struct list_head c_servers = { &c_servers, &c_servers };
      |                  ^~~~~~~~~
links.h:718:93: warning: array subscript 'struct c_server[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
cookies.c:302:9: note: in expansion of macro 'add_to_list'
  302 |         add_to_list(c_servers, s);
      |         ^~~~~~~~~~~
cookies.c:29:18: note: object 'c_servers' of size 16
   29 | struct list_head c_servers = { &c_servers, &c_servers };
      |                  ^~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o bookmarks.o bookmarks.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o charsets.o charsets.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o gif.o gif.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o https.o https.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o file.o file.c
In file included from /usr/include/string.h:548,
                 from links.h:55,
                 from file.c:6:
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'file_func' at file.c:293:8:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'file_func' at file.c:345:24:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'file_func' at file.c:319:24:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'file_func' at file.c:266:18:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o imgcache.o imgcache.c
In file included from imgcache.c:11:
imgcache.c: In function 'find_cached_image':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
imgcache.c:52:9: note: in expansion of macro 'add_to_list'
   52 |         add_to_list(image_cache, i);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
imgcache.c:52:9: note: in expansion of macro 'add_to_list'
   52 |         add_to_list(image_cache, i);
      |         ^~~~~~~~~~~
imgcache.c: In function 'add_image_to_cache':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
imgcache.c:58:9: note: in expansion of macro 'add_to_list'
   58 |         add_to_list(image_cache, ci);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
imgcache.c:58:9: note: in expansion of macro 'add_to_list'
   58 |         add_to_list(image_cache, ci);
      |         ^~~~~~~~~~~
imgcache.c: In function 'find_cached_image':
links.h:718:67: warning: array subscript 'struct cached_image[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
imgcache.c:52:9: note: in expansion of macro 'add_to_list'
   52 |         add_to_list(image_cache, i);
      |         ^~~~~~~~~~~
imgcache.c:13:18: note: object 'image_cache' of size 16
   13 | struct list_head image_cache = { &image_cache, &image_cache };
      |                  ^~~~~~~~~~~
links.h:718:93: warning: array subscript 'struct cached_image[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
imgcache.c:52:9: note: in expansion of macro 'add_to_list'
   52 |         add_to_list(image_cache, i);
      |         ^~~~~~~~~~~
imgcache.c:13:18: note: object 'image_cache' of size 16
   13 | struct list_head image_cache = { &image_cache, &image_cache };
      |                  ^~~~~~~~~~~
imgcache.c: In function 'add_image_to_cache':
links.h:718:67: warning: array subscript 'struct cached_image[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
imgcache.c:58:9: note: in expansion of macro 'add_to_list'
   58 |         add_to_list(image_cache, ci);
      |         ^~~~~~~~~~~
imgcache.c:13:18: note: object 'image_cache' of size 16
   13 | struct list_head image_cache = { &image_cache, &image_cache };
      |                  ^~~~~~~~~~~
links.h:718:93: warning: array subscript 'struct cached_image[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
imgcache.c:58:9: note: in expansion of macro 'add_to_list'
   58 |         add_to_list(image_cache, ci);
      |         ^~~~~~~~~~~
imgcache.c:13:18: note: object 'image_cache' of size 16
   13 | struct list_head image_cache = { &image_cache, &image_cache };
      |                  ^~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o jsint.o jsint.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o dither.o dither.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o jpeg.o jpeg.c
jpeg.c: In function 'jpeg_restart':
jpeg.c:239:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
  239 |                 deco->state=1;
      |                 ~~~~~~~~~~~^~
jpeg.c:241:17: note: here
  241 |                 case 1:
      |                 ^~~~
jpeg.c:314:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
  314 |                 deco->state=2;
      |                 ~~~~~~~~~~~^~
jpeg.c:316:17: note: here
  316 |                 case 2:
      |                 ^~~~
jpeg.c:355:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
  355 |                 deco->state=4;
      |                 ~~~~~~~~~~~^~
jpeg.c:357:17: note: here
  357 |                 case 4:
      |                 ^~~~
jpeg.c:369:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
  369 |                 deco->state=5;
      |                 ~~~~~~~~~~~^~
jpeg.c:371:17: note: here
  371 |                 case 5:
      |                 ^~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o links_icon.o links_icon.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o framebuffer.o framebuffer.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o lru.o lru.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o language.o language.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o html_gr.o html_gr.c
In file included from html_gr.c:13:
html_gr.c: In function 'g_html_form_control':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
html_gr.c:473:17: note: in expansion of macro 'add_to_list'
  473 |                 add_to_list(p->uf, fc);
      |                 ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
html_gr.c:473:17: note: in expansion of macro 'add_to_list'
  473 |                 add_to_list(p->uf, fc);
      |                 ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
html_gr.c:497:9: note: in expansion of macro 'add_to_list'
  497 |         add_to_list(p->data->forms, fc);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
html_gr.c:497:9: note: in expansion of macro 'add_to_list'
  497 |         add_to_list(p->data->forms, fc);
      |         ^~~~~~~~~~~
html_gr.c: In function 'g_format_html_part':
links.h:718:67: warning: array subscript 'struct g_table_cache_entry[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
html_gr.c:1069:17: note: in expansion of macro 'add_to_list'
 1069 |                 add_to_list(g_table_cache, tce);
      |                 ^~~~~~~~~~~
html_gr.c:953:18: note: object 'g_table_cache' of size 16
  953 | struct list_head g_table_cache = { &g_table_cache, &g_table_cache };
      |                  ^~~~~~~~~~~~~
links.h:718:93: warning: array subscript 'struct g_table_cache_entry[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
html_gr.c:1069:17: note: in expansion of macro 'add_to_list'
 1069 |                 add_to_list(g_table_cache, tce);
      |                 ^~~~~~~~~~~
html_gr.c:953:18: note: object 'g_table_cache' of size 16
  953 | struct list_head g_table_cache = { &g_table_cache, &g_table_cache };
      |                  ^~~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o img.o img.c
In file included from img.c:16:
img.c: In function 'insert_image':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
img.c:1284:37: note: in expansion of macro 'add_to_list'
 1284 |                 if (im->insert_flag)add_to_list(current_f_data->images,&image->image_list);
      |                                     ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
img.c:1284:37: note: in expansion of macro 'add_to_list'
 1284 |                 if (im->insert_flag)add_to_list(current_f_data->images,&image->image_list);
      |                                     ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
img.c:1305:29: note: in expansion of macro 'add_to_list'
 1305 |         if (im->insert_flag)add_to_list(current_f_data->images,&image->image_list);
      |                             ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
img.c:1305:29: note: in expansion of macro 'add_to_list'
 1305 |         if (im->insert_flag)add_to_list(current_f_data->images,&image->image_list);
      |                             ^~~~~~~~~~~
img.c: In function 'img_destruct_cached_image':
img.c:167:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
  167 |                 if (cimg->strip_optimized){
      |                    ^
img.c:172:17: note: here
  172 |                 case 8:
      |                 ^~~~
img.c: In function 'img_end':
img.c:719:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
  719 |                 if (cimg->gamma_table) mem_free(cimg->gamma_table);
      |                    ^
img.c:720:17: note: here
  720 |                 case 8:
      |                 ^~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o mailto.o mailto.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o kbd.o kbd.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o pmshell.o pmshell.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o dip.o dip.c
dip.c: In function 'load_char':
dip.c:1442:39: warning: cast between incompatible function types from 'void (*)(png_struct *, png_byte *, png_uint_32)' {aka 'void (*)(struct png_struct_def *, unsigned char *, unsigned int)'} to 'void (*)(png_struct *, png_byte *, size_t)' {aka 'void (*)(struct png_struct_def *, unsigned char *, long unsigned int)'} [-Wcast-function-type]
 1442 |         png_set_read_fn(png_ptr,&work,(png_rw_ptr)&read_stored_data);
      |                                       ^
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o main.o main.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o memory.o memory.c
In file included from memory.c:6:
memory.c: In function 'register_cache_upcall':
links.h:718:67: warning: array subscript 'struct cache_upcall[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
memory.c:31:9: note: in expansion of macro 'add_to_list'
   31 |         add_to_list(cache_upcalls, c);
      |         ^~~~~~~~~~~
memory.c:15:18: note: object 'cache_upcalls' of size 16
   15 | struct list_head cache_upcalls = { &cache_upcalls, &cache_upcalls }; /* cache_upcall */
      |                  ^~~~~~~~~~~~~
links.h:718:93: warning: array subscript 'struct cache_upcall[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
memory.c:31:9: note: in expansion of macro 'add_to_list'
   31 |         add_to_list(cache_upcalls, c);
      |         ^~~~~~~~~~~
memory.c:15:18: note: object 'cache_upcalls' of size 16
   15 | struct list_head cache_upcalls = { &cache_upcalls, &cache_upcalls }; /* cache_upcall */
      |                  ^~~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o ftp.o ftp.c
In file included from /usr/include/string.h:548,
                 from links.h:55,
                 from ftp.c:7:
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'ftp_process_dirlist' at ftp.c:589:23:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o png.o png.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o svgalib.o svgalib.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o http.o http.c
http.c: In function 'http_got_header':
http.c:712:46: warning: passing argument 3 of 'add_to_str' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
  712 |                 add_to_str(&e->ssl_info, &l, SSL_get_cipher_version(c->ssl));
      |                                              ^~~~~~~~~~~~~~~~~~~~~~
In file included from http.c:7:
links.h:528:73: note: expected 'unsigned char *' but argument is of type 'const char *'
  528 | static inline void add_to_str(unsigned char **s, int *l, unsigned char *a)
      |                                                          ~~~~~~~~~~~~~~~^
http.c: In function 'http_send_header':
http.c:295:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  295 |                 {
      |                 ^
http.c:308:17: note: here
  308 |                 case REFERER_REAL:
      |                 ^~~~
In file included from /usr/include/string.h:548,
                 from links.h:55:
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'http_send_header' at http.c:315:10:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o objreq.o objreq.c
In file included from objreq.c:7:
objreq.c: In function 'request_object':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
objreq.c:208:9: note: in expansion of macro 'add_to_list'
  208 |         add_to_list(requests, rq);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
objreq.c:208:9: note: in expansion of macro 'add_to_list'
  208 |         add_to_list(requests, rq);
      |         ^~~~~~~~~~~
links.h:718:67: warning: array subscript 'struct object_request[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
objreq.c:208:9: note: in expansion of macro 'add_to_list'
  208 |         add_to_list(requests, rq);
      |         ^~~~~~~~~~~
objreq.c:17:18: note: object 'requests' of size 16
   17 | struct list_head requests = {&requests, &requests};
      |                  ^~~~~~~~
links.h:718:93: warning: array subscript 'struct object_request[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
objreq.c:208:9: note: in expansion of macro 'add_to_list'
  208 |         add_to_list(requests, rq);
      |         ^~~~~~~~~~~
objreq.c:17:18: note: object 'requests' of size 16
   17 | struct list_head requests = {&requests, &requests};
      |                  ^~~~~~~~
In file included from /usr/include/string.h:548,
                 from links.h:55:
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'request_object' at objreq.c:194:17:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o os_dep.o os_dep.c
os_dep.c: In function 'start_thread':
os_dep.c:1541:17: warning: ignoring return value of 'write' declared with attribute 'warn_unused_result' [-Wunused-result]
 1541 |                 write(p[1], "x", 1);
      |                 ^~~~~~~~~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o tiff.o tiff.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o select.o select.c
In file included from select.c:7:
select.c: In function 'register_bottom_half':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
select.c:94:9: note: in expansion of macro 'add_to_list'
   94 |         add_to_list(bottom_halves, bh);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
select.c:94:9: note: in expansion of macro 'add_to_list'
   94 |         add_to_list(bottom_halves, bh);
      |         ^~~~~~~~~~~
select.c: In function 'signal_break':
select.c:265:42: warning: ignoring return value of 'read' declared with attribute 'warn_unused_result' [-Wunused-result]
  265 |         while (can_read(signal_pipe[0])) read(signal_pipe[0], &c, 1);
      |                                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
select.c: In function 'got_signal':
select.c:283:40: warning: ignoring return value of 'write' declared with attribute 'warn_unused_result' [-Wunused-result]
  283 |         if (can_write(signal_pipe[1])) write(signal_pipe[1], "x", 1);
      |                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
select.c: In function 'select_loop':
select.c:361:47: warning: ignoring return value of 'chdir' declared with attribute 'warn_unused_result' [-Wunused-result]
  361 |         if (stat(".", &st) && getenv("HOME")) chdir(getenv("HOME"));
      |                                               ^~~~~~~~~~~~~~~~~~~~~
select.c: In function 'register_bottom_half':
links.h:718:67: warning: array subscript 'struct bottom_half[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
select.c:94:9: note: in expansion of macro 'add_to_list'
   94 |         add_to_list(bottom_halves, bh);
      |         ^~~~~~~~~~~
select.c:85:18: note: object 'bottom_halves' of size 16
   85 | struct list_head bottom_halves = { &bottom_halves, &bottom_halves };
      |                  ^~~~~~~~~~~~~
links.h:718:93: warning: array subscript 'struct bottom_half[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
select.c:94:9: note: in expansion of macro 'add_to_list'
   94 |         add_to_list(bottom_halves, bh);
      |         ^~~~~~~~~~~
select.c:85:18: note: object 'bottom_halves' of size 16
   85 | struct list_head bottom_halves = { &bottom_halves, &bottom_halves };
      |                  ^~~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o default.o default.c
In file included from /usr/include/string.h:548,
                 from links.h:55,
                 from default.c:8:
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'parse_config_file' at default.c:220:24:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'get_home' at default.c:374:15:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'get_home' at default.c:355:17:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'load_config_file' at default.c:423:16:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'load_config_file' at default.c:418:16:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'write_config_data' at default.c:454:16:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'get_driver_param',
    inlined from 'get_driver_param' at default.c:977:22:
links.h:718:67: warning: array subscript 'struct driver_param[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                ~~~^~~~~~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
default.c:986:9: note: in expansion of macro 'add_to_list'
  986 |         add_to_list(driver_params, dp);
      |         ^~~~~~~~~~~
default.c: In function 'get_driver_param':
default.c:975:18: note: object 'driver_params' of size 16
  975 | struct list_head driver_params = { &driver_params, &driver_params };
      |                  ^~~~~~~~~~~~~
In function 'get_driver_param',
    inlined from 'get_driver_param' at default.c:977:22:
links.h:718:99: warning: array subscript 'struct driver_param[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                          ~~~~~~~~~^~~~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
default.c:986:9: note: in expansion of macro 'add_to_list'
  986 |         add_to_list(driver_params, dp);
      |         ^~~~~~~~~~~
default.c: In function 'get_driver_param':
default.c:975:18: note: object 'driver_params' of size 16
  975 | struct list_head driver_params = { &driver_params, &driver_params };
      |                  ^~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'load_url_history' at default.c:1741:9:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'load_url_history' at default.c:1733:17:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'save_url_history' at default.c:1761:17:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o html_r.o html_r.c
In file included from html_r.c:6:
html_r.c: In function 'html_form_control':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
html_r.c:860:17: note: in expansion of macro 'add_to_list'
  860 |                 add_to_list(p->uf, fc);
      |                 ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
html_r.c:860:17: note: in expansion of macro 'add_to_list'
  860 |                 add_to_list(p->uf, fc);
      |                 ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
html_r.c:884:9: note: in expansion of macro 'add_to_list'
  884 |         add_to_list(p->data->forms, fc);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
html_r.c:884:9: note: in expansion of macro 'add_to_list'
  884 |         add_to_list(p->data->forms, fc);
      |         ^~~~~~~~~~~
html_r.c: In function 'format_html_part':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
html_r.c:1088:17: note: in expansion of macro 'add_to_list'
 1088 |                 add_to_list(data->nodes, n);
      |                 ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
html_r.c:1088:17: note: in expansion of macro 'add_to_list'
 1088 |                 add_to_list(data->nodes, n);
      |                 ^~~~~~~~~~~
html_r.c: In function 'push_base_format':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
html_r.c:1192:9: note: in expansion of macro 'add_to_list'
 1192 |         add_to_list(html_stack, e);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
html_r.c:1192:9: note: in expansion of macro 'add_to_list'
 1192 |         add_to_list(html_stack, e);
      |         ^~~~~~~~~~~
html_r.c: In function 'format_html_part':
links.h:718:67: warning: array subscript 'struct table_cache_entry[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
html_r.c:1171:17: note: in expansion of macro 'add_to_list'
 1171 |                 add_to_list(table_cache, tce);
      |                 ^~~~~~~~~~~
html_r.c:1040:18: note: object 'table_cache' of size 16
 1040 | struct list_head table_cache = { &table_cache, &table_cache };
      |                  ^~~~~~~~~~~
links.h:718:93: warning: array subscript 'struct table_cache_entry[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
html_r.c:1171:17: note: in expansion of macro 'add_to_list'
 1171 |                 add_to_list(table_cache, tce);
      |                 ^~~~~~~~~~~
html_r.c:1040:18: note: object 'table_cache' of size 16
 1040 | struct list_head table_cache = { &table_cache, &table_cache };
      |                  ^~~~~~~~~~~
html_r.c: In function 'push_base_format':
links.h:718:67: warning: array subscript 'struct html_element[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
html_r.c:1192:9: note: in expansion of macro 'add_to_list'
 1192 |         add_to_list(html_stack, e);
      |         ^~~~~~~~~~~
links.h:4082:25: note: object 'html_stack' of size 16
 4082 | extern struct list_head html_stack;
      |                         ^~~~~~~~~~
links.h:718:93: warning: array subscript 'struct html_element[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
html_r.c:1192:9: note: in expansion of macro 'add_to_list'
 1192 |         add_to_list(html_stack, e);
      |         ^~~~~~~~~~~
links.h:4082:25: note: object 'html_stack' of size 16
 4082 | extern struct list_head html_stack;
      |                         ^~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o sched.o sched.c
In file included from sched.c:7:
sched.c: In function 'add_keepalive_socket':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
sched.c:282:9: note: in expansion of macro 'add_to_list'
  282 |         add_to_list(keepalive_connections, k);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
sched.c:282:9: note: in expansion of macro 'add_to_list'
  282 |         add_to_list(keepalive_connections, k);
      |         ^~~~~~~~~~~
sched.c: In function 'run_connection':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
sched.c:435:17: note: in expansion of macro 'add_to_list'
  435 |                 add_to_list(h_conns, hc);
      |                 ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
sched.c:435:17: note: in expansion of macro 'add_to_list'
  435 |                 add_to_list(h_conns, hc);
      |                 ^~~~~~~~~~~
sched.c: In function 'load_url':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
sched.c:641:25: note: in expansion of macro 'add_to_list'
  641 |                         add_to_list(c->statuss, stat);
      |                         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
sched.c:641:25: note: in expansion of macro 'add_to_list'
  641 |                         add_to_list(c->statuss, stat);
      |                         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
sched.c:675:17: note: in expansion of macro 'add_to_list'
  675 |                 add_to_list(c->statuss, stat);
      |                 ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
sched.c:675:17: note: in expansion of macro 'add_to_list'
  675 |                 add_to_list(c->statuss, stat);
      |                 ^~~~~~~~~~~
sched.c: In function 'change_connection':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
sched.c:717:17: note: in expansion of macro 'add_to_list'
  717 |                 add_to_list(c->statuss, newstat);
      |                 ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
sched.c:717:17: note: in expansion of macro 'add_to_list'
  717 |                 add_to_list(c->statuss, newstat);
      |                 ^~~~~~~~~~~
sched.c: In function 'add_keepalive_socket':
links.h:718:67: warning: array subscript 'struct k_conn[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
sched.c:282:9: note: in expansion of macro 'add_to_list'
  282 |         add_to_list(keepalive_connections, k);
      |         ^~~~~~~~~~~
sched.c:24:18: note: object 'keepalive_connections' of size 16
   24 | struct list_head keepalive_connections = {&keepalive_connections, &keepalive_connections};
      |                  ^~~~~~~~~~~~~~~~~~~~~
links.h:718:93: warning: array subscript 'struct k_conn[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
sched.c:282:9: note: in expansion of macro 'add_to_list'
  282 |         add_to_list(keepalive_connections, k);
      |         ^~~~~~~~~~~
sched.c:24:18: note: object 'keepalive_connections' of size 16
   24 | struct list_head keepalive_connections = {&keepalive_connections, &keepalive_connections};
      |                  ^~~~~~~~~~~~~~~~~~~~~
In function 'run_connection',
    inlined from 'run_connection' at sched.c:398:6:
links.h:718:67: warning: array subscript 'struct h_conn[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                ~~~^~~~~~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
sched.c:435:17: note: in expansion of macro 'add_to_list'
  435 |                 add_to_list(h_conns, hc);
      |                 ^~~~~~~~~~~
sched.c: In function 'run_connection':
sched.c:22:18: note: object 'h_conns' of size 16
   22 | struct list_head h_conns = {&h_conns, &h_conns};
      |                  ^~~~~~~
In function 'run_connection',
    inlined from 'run_connection' at sched.c:398:6:
links.h:718:99: warning: array subscript 'struct h_conn[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                          ~~~~~~~~~^~~~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
sched.c:435:17: note: in expansion of macro 'add_to_list'
  435 |                 add_to_list(h_conns, hc);
      |                 ^~~~~~~~~~~
sched.c: In function 'run_connection':
sched.c:22:18: note: object 'h_conns' of size 16
   22 | struct list_head h_conns = {&h_conns, &h_conns};
      |                  ^~~~~~~
sched.c: In function 'add_blacklist_entry':
links.h:718:67: warning: array subscript 'struct blacklist_entry[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
sched.c:833:9: note: in expansion of macro 'add_to_list'
  833 |         add_to_list(blacklist, b);
      |         ^~~~~~~~~~~
sched.c:821:18: note: object 'blacklist' of size 16
  821 | struct list_head blacklist = { &blacklist, &blacklist };
      |                  ^~~~~~~~~
links.h:718:93: warning: array subscript 'struct blacklist_entry[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
sched.c:833:9: note: in expansion of macro 'add_to_list'
  833 |         add_to_list(blacklist, b);
      |         ^~~~~~~~~~~
sched.c:821:18: note: object 'blacklist' of size 16
  821 | struct list_head blacklist = { &blacklist, &blacklist };
      |                  ^~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o x.o x.c
x.c: In function 'x_process_events':
x.c:965:41: warning: 'memset' used with constant zero length parameter; this could be due to transposed parameters [-Wmemset-transposed-args]
  965 |                                         memset(&m, sizeof(m), 0);
      |                                         ^~~~~~
x.c:1025:49: warning: 'memset' used with constant zero length parameter; this could be due to transposed parameters [-Wmemset-transposed-args]
 1025 |                                                 memset(&m, sizeof(m), 0);
      |                                                 ^~~~~~
x.c:1303:33: warning: 'memset' used with constant zero length parameter; this could be due to transposed parameters [-Wmemset-transposed-args]
 1303 |                                 memset(&m, sizeof(m), 0);
      |                                 ^~~~~~
x.c: At top level:
x.c:2581:5: error: conflicting types for 'x_dnd_list_types'; have 'int(int)'
 2581 | int x_dnd_list_types(int type)
      |     ^~~~~~~~~~~~~~~~
In file included from x.c:82:
links.h:1841:5: note: previous declaration of 'x_dnd_list_types' with type 'int(void)'
 1841 | int x_dnd_list_types();
      |     ^~~~~~~~~~~~~~~~
make[1]: *** [Makefile:556: x.o] Error 1
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: *** Waiting for unfinished jobs....
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o html_tbl.o html_tbl.c
In file included from html_tbl.c:7:
html_tbl.c: In function 'format_table':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
html_tbl.c:1525:9: note: in expansion of macro 'add_to_list'
 1525 |         add_to_list(p->data->nodes, nn);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
html_tbl.c:1525:9: note: in expansion of macro 'add_to_list'
 1525 |         add_to_list(p->data->nodes, nn);
      |         ^~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o bfu.o bfu.c
In file included from bfu.c:6:
bfu.c: In function 'menu_func':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
bfu.c:528:33: note: in expansion of macro 'add_to_list'
  528 |                                 add_to_list(menu->deleted_items, di);
      |                                 ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
bfu.c:528:33: note: in expansion of macro 'add_to_list'
  528 |                                 add_to_list(menu->deleted_items, di);
      |                                 ^~~~~~~~~~~
bfu.c: In function 'mainmenu_func':
bfu.c:790:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
  790 |                         if (F) set_window_pos(win, 0, 0, win->term->x, G_BFU_FONT_SIZE);
      |                            ^
bfu.c:792:17: note: here
  792 |                 case EV_REDRAW:
      |                 ^~~~
bfu.c: In function 'dialog_func':
bfu.c:1313:39: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1313 |                         dlg->selected = 0;
      |                         ~~~~~~~~~~~~~~^~~
bfu.c:1314:17: note: here
 1314 |                 case EV_RESIZE:
      |                 ^~~~
bfu.c:1316:25: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1316 |                         draw_to_window(dlg->win, (void (*)(struct terminal *, void *))redraw_dialog, dlg);
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bfu.c:1317:17: note: here
 1317 |                 case EV_REDRAW:
      |                 ^~~~
In file included from /usr/include/string.h:548,
                 from links.h:55:
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'dialog_func' at bfu.c:1491:16:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'dlg_format_text' at bfu.c:1874:10:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o listedit.o listedit.c
listedit.c: In function 'draw_bfu_element':
listedit.c:311:25: warning: this statement may fall through [-Wimplicit-fallthrough=]
  311 |                         drv->fill_area(dev,x+2+BFU_GRX_WIDTH,y+1+.5*BFU_GRX_HEIGHT,x+1.5*BFU_GRX_WIDTH,y-3+BFU_GRX_HEIGHT,b);
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
listedit.c:313:25: note: here
  313 |                         case BFU_ELEMENT_OPEN:
      |                         ^~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o xbm.o xbm.c
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o smb.o smb.c
In file included from /usr/include/string.h:548,
                 from links.h:55,
                 from smb.c:1:
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'end_smb_connection' at smb.c:466:9:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o url.o url.c
In file included from url.c:6:
url.c: In function 'add_shortcut_proto':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
url.c:50:9: note: in expansion of macro 'add_to_list'
   50 |         add_to_list(sprotos, sp);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
url.c:50:9: note: in expansion of macro 'add_to_list'
   50 |         add_to_list(sprotos, sp);
      |         ^~~~~~~~~~~
links.h:718:67: warning: array subscript 'struct shortcut_protocol[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
url.c:50:9: note: in expansion of macro 'add_to_list'
   50 |         add_to_list(sprotos, sp);
      |         ^~~~~~~~~~~
url.c:38:18: note: object 'sprotos' of size 16
   38 | struct list_head sprotos = {&sprotos, &sprotos};
      |                  ^~~~~~~
links.h:718:93: warning: array subscript 'struct shortcut_protocol[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
url.c:50:9: note: in expansion of macro 'add_to_list'
   50 |         add_to_list(sprotos, sp);
      |         ^~~~~~~~~~~
url.c:38:18: note: object 'sprotos' of size 16
   38 | struct list_head sprotos = {&sprotos, &sprotos};
      |                  ^~~~~~~
In file included from /usr/include/string.h:548,
                 from links.h:55:
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'handle_shortcut_protocols' at url.c:77:11:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
url.c: In function 'url_bypasses_socks':
url.c:279:16: warning: 'ret' may be used uninitialized [-Wmaybe-uninitialized]
  279 |         return ret;
      |                ^~~
url.c:274:13: note: 'ret' was declared here
  274 |         int ret;
      |             ^~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'join_urls' at url.c:383:7:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'join_urls' at url.c:409:7:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'join_urls' at url.c:398:7:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'translate_url' at url.c:453:8:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'translate_url' at url.c:523:13:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'translate_url' at url.c:469:8:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o types.o types.c
In file included from types.c:6:
types.c: In function 'update_assoc':
links.h:718:67: warning: array subscript 'struct assoc[0]' is partly outside array bounds of 'struct list_dirty_workaround_for_name_clash_in_stl_with_class_list[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
types.c:414:9: note: in expansion of macro 'add_to_list'
  414 |         add_to_list(assoc, repl);
      |         ^~~~~~~~~~~
types.c:32:13: note: object 'assoc' of size 32
   32 | struct list assoc={&assoc,&assoc,0,-1,NULL};
      |             ^~~~~
links.h:718:93: warning: array subscript 'struct assoc[0]' is partly outside array bounds of 'struct list_dirty_workaround_for_name_clash_in_stl_with_class_list[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
types.c:414:9: note: in expansion of macro 'add_to_list'
  414 |         add_to_list(assoc, repl);
      |         ^~~~~~~~~~~
types.c:32:13: note: object 'assoc' of size 32
   32 | struct list assoc={&assoc,&assoc,0,-1,NULL};
      |             ^~~~~
links.h:718:67: warning: array subscript 'struct assoc[0]' is partly outside array bounds of 'struct list_dirty_workaround_for_name_clash_in_stl_with_class_list[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
types.c:410:17: note: in expansion of macro 'add_to_list'
  410 |                 add_to_list(assoc, repl);
      |                 ^~~~~~~~~~~
types.c:32:13: note: object 'assoc' of size 32
   32 | struct list assoc={&assoc,&assoc,0,-1,NULL};
      |             ^~~~~
links.h:718:93: warning: array subscript 'struct assoc[0]' is partly outside array bounds of 'struct list_dirty_workaround_for_name_clash_in_stl_with_class_list[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
types.c:410:17: note: in expansion of macro 'add_to_list'
  410 |                 add_to_list(assoc, repl);
      |                 ^~~~~~~~~~~
types.c:32:13: note: object 'assoc' of size 32
   32 | struct list assoc={&assoc,&assoc,0,-1,NULL};
      |             ^~~~~
types.c: In function 'update_ext':
links.h:718:67: warning: array subscript 'struct extension[0]' is partly outside array bounds of 'struct list_dirty_workaround_for_name_clash_in_stl_with_class_list[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
types.c:726:9: note: in expansion of macro 'add_to_list'
  726 |         add_to_list(extensions, repl);
      |         ^~~~~~~~~~~
types.c:440:13: note: object 'extensions' of size 32
  440 | struct list extensions = { &extensions, &extensions, 0, -1, NULL };
      |             ^~~~~~~~~~
links.h:718:93: warning: array subscript 'struct extension[0]' is partly outside array bounds of 'struct list_dirty_workaround_for_name_clash_in_stl_with_class_list[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
types.c:726:9: note: in expansion of macro 'add_to_list'
  726 |         add_to_list(extensions, repl);
      |         ^~~~~~~~~~~
types.c:440:13: note: object 'extensions' of size 32
  440 | struct list extensions = { &extensions, &extensions, 0, -1, NULL };
      |             ^~~~~~~~~~
links.h:718:67: warning: array subscript 'struct extension[0]' is partly outside array bounds of 'struct list_dirty_workaround_for_name_clash_in_stl_with_class_list[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
types.c:722:17: note: in expansion of macro 'add_to_list'
  722 |                 add_to_list(extensions, repl);
      |                 ^~~~~~~~~~~
types.c:440:13: note: object 'extensions' of size 32
  440 | struct list extensions = { &extensions, &extensions, 0, -1, NULL };
      |             ^~~~~~~~~~
links.h:718:93: warning: array subscript 'struct extension[0]' is partly outside array bounds of 'struct list_dirty_workaround_for_name_clash_in_stl_with_class_list[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
types.c:722:17: note: in expansion of macro 'add_to_list'
  722 |                 add_to_list(extensions, repl);
      |                 ^~~~~~~~~~~
types.c:440:13: note: object 'extensions' of size 32
  440 | struct list extensions = { &extensions, &extensions, 0, -1, NULL };
      |             ^~~~~~~~~~
types.c: In function 'update_prog':
types.c:1031:9: warning: '__builtin_strncpy' specified bound 1024 equals destination size [-Wstringop-truncation]
 1031 |         strncpy(repl->prog, p, MAX_STR_LEN);
      |         ^
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o html.o html.c
In file included from html.c:6:
html.c: In function 'html_stack_dup':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
html.c:661:9: note: in expansion of macro 'add_to_list'
  661 |         add_to_list(html_stack, e);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
html.c:661:9: note: in expansion of macro 'add_to_list'
  661 |         add_to_list(html_stack, e);
      |         ^~~~~~~~~~~
html.c: In function 'html_li':
html.c:1454:29: warning: initializer-string for array of 'char' truncates NUL terminator but destination lacks 'nonstring' attribute (8 chars into 7 available) [-Wunterminated-string-initialization]
 1454 |                 char x[7] = "* ";
      |                             ^~~~~~~~~
html.c: In function 'html_stack_dup':
links.h:718:67: warning: array subscript 'struct html_element[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
html.c:661:9: note: in expansion of macro 'add_to_list'
  661 |         add_to_list(html_stack, e);
      |         ^~~~~~~~~~~
html.c:10:18: note: object 'html_stack' of size 16
   10 | struct list_head html_stack = {&html_stack, &html_stack};
      |                  ^~~~~~~~~~
links.h:718:93: warning: array subscript 'struct html_element[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
html.c:661:9: note: in expansion of macro 'add_to_list'
  661 |         add_to_list(html_stack, e);
      |         ^~~~~~~~~~~
html.c:10:18: note: object 'html_stack' of size 16
   10 | struct list_head html_stack = {&html_stack, &html_stack};
      |                  ^~~~~~~~~~
In file included from /usr/include/string.h:548,
                 from links.h:55:
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'html_img' at html.c:1060:9:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'html_img' at html.c:1097:8:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'menu_labels' at html.c:1944:14:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'menu_labels' at html.c:1951:14:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'get_image_map' at html.c:2939:67:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'get_image_map' at html.c:2987:22:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'get_image_map' at html.c:2985:22:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'get_image_map' at html.c:2983:22:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'get_image_map' at html.c:2981:22:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'get_image_map' at html.c:2979:22:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'get_image_map' at html.c:2977:22:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'get_image_map' at html.c:2974:22:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o menu.o menu.c
In file included from menu.c:6:
menu.c: In function 'add_open_with':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
menu.c:456:9: note: in expansion of macro 'add_to_list'
  456 |         add_to_list(open_withs, ow);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
menu.c:456:9: note: in expansion of macro 'add_to_list'
  456 |         add_to_list(open_withs, ow);
      |         ^~~~~~~~~~~
menu.c: At top level:
links.h:3355:19: warning: cast between incompatible function types from 'void (*)(struct terminal *)' to 'void (*)(struct terminal *, void *, void *)' [-Wcast-function-type]
 3355 | #define MENU_FUNC (void (*)(struct terminal *, void *, void *))
      |                   ^
menu.c:2443:62: note: in expansion of macro 'MENU_FUNC'
 2443 |         { TEXT(T_SAVE_OPTIONS), "", TEXT(T_HK_SAVE_OPTIONS), MENU_FUNC write_config, NULL, 0, 0, NULL },
      |                                                              ^~~~~~~~~
links.h:3355:19: warning: cast between incompatible function types from 'void (*)(struct terminal *)' to 'void (*)(struct terminal *, void *, void *)' [-Wcast-function-type]
 3355 | #define MENU_FUNC (void (*)(struct terminal *, void *, void *))
      |                   ^
menu.c:2475:62: note: in expansion of macro 'MENU_FUNC'
 2475 |         { TEXT(T_SAVE_OPTIONS), "", TEXT(T_HK_SAVE_OPTIONS), MENU_FUNC write_config, NULL, 0, 0, NULL },
      |                                                              ^~~~~~~~~
menu.c: In function 'dlg_resize_terminal':
menu.c:2165:25: warning: '%d' directive writing between 1 and 11 bytes into a region of size 4 [-Wformat-overflow=]
 2165 |         sprintf(x_str, "%d", x);
      |                         ^~
menu.c:2165:24: note: directive argument in the range [-2147483648, 999]
 2165 |         sprintf(x_str, "%d", x);
      |                        ^~~~
In file included from /usr/include/stdio.h:970,
                 from links.h:49:
In function 'sprintf',
    inlined from 'dlg_resize_terminal' at menu.c:2165:2:
/usr/include/bits/stdio2.h:30:10: note: '__builtin___sprintf_chk' output between 2 and 12 bytes into a destination of size 4
   30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   31 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   32 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
menu.c: In function 'dlg_resize_terminal':
menu.c:2166:25: warning: '%d' directive writing between 1 and 11 bytes into a region of size 4 [-Wformat-overflow=]
 2166 |         sprintf(y_str, "%d", y);
      |                         ^~
menu.c:2166:24: note: directive argument in the range [-2147483648, 999]
 2166 |         sprintf(y_str, "%d", y);
      |                        ^~~~
In function 'sprintf',
    inlined from 'dlg_resize_terminal' at menu.c:2166:2:
/usr/include/bits/stdio2.h:30:10: note: '__builtin___sprintf_chk' output between 2 and 12 bytes into a destination of size 4
   30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   31 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   32 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
menu.c: In function 'history_menu':
menu.c:445:14: warning: 'cur_loc' may be used uninitialized [-Wmaybe-uninitialized]
  445 |         else do_menu_selected(term, mi, ses, cur_loc);
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
menu.c:434:21: note: 'cur_loc' was declared here
  434 |         long n = 0, cur_loc;
      |                     ^~~~~~~
menu.c: In function 'miscelaneous_options':
menu.c:2009:9: warning: '__builtin_strncpy' specified bound 1024 equals destination size [-Wstringop-truncation]
 2009 |         strncpy(new_bookmarks_file,bookmarks_file,MAX_STR_LEN);
      |         ^
menu.c:2009:9: warning: '__builtin_strncpy' specified bound 1024 equals destination size [-Wstringop-truncation]
menu.c: In function 'add_open_with':
links.h:718:67: warning: array subscript 'struct open_with[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
menu.c:456:9: note: in expansion of macro 'add_to_list'
  456 |         add_to_list(open_withs, ow);
      |         ^~~~~~~~~~~
menu.c:448:18: note: object 'open_withs' of size 16
  448 | struct list_head open_withs = {&open_withs, &open_withs};
      |                  ^~~~~~~~~~
links.h:718:93: warning: array subscript 'struct open_with[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
menu.c:456:9: note: in expansion of macro 'add_to_list'
  456 |         add_to_list(open_withs, ow);
      |         ^~~~~~~~~~~
menu.c:448:18: note: object 'open_withs' of size 16
  448 | struct list_head open_withs = {&open_withs, &open_withs};
      |                  ^~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o view_gr.o view_gr.c
view_gr.c: In function 'g_frame_ev':
view_gr.c:1103:45: warning: absolute value function 'abs' given an argument of type 'long int' but has parameter of type 'int' which may cause truncation of value [-Wabsolute-value]
 1103 |                                         if (abs(ev->x - fd->f_data->start_highlight_x) < 8 && abs(ev->y - fd->f_data->start_highlight_y) < 8) goto skip_hl;
      |                                             ^~~
view_gr.c:1103:95: warning: absolute value function 'abs' given an argument of type 'long int' but has parameter of type 'int' which may cause truncation of value [-Wabsolute-value]
 1103 |                                         if (abs(ev->x - fd->f_data->start_highlight_x) < 8 && abs(ev->y - fd->f_data->start_highlight_y) < 8) goto skip_hl;
      |                                                                                               ^~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o terminal.o terminal.c
In file included from terminal.c:6:
terminal.c: In function 'open_in_new_tab':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
terminal.c:542:9: note: in expansion of macro 'add_to_list'
  542 |         add_to_list(tb->windows, win);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
terminal.c:542:9: note: in expansion of macro 'add_to_list'
  542 |         add_to_list(tb->windows, win);
      |         ^~~~~~~~~~~
terminal.c: In function 'init_term':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
terminal.c:758:9: note: in expansion of macro 'add_to_list'
  758 |         add_to_list(tb->windows, win);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
terminal.c:758:9: note: in expansion of macro 'add_to_list'
  758 |         add_to_list(tb->windows, win);
      |         ^~~~~~~~~~~
terminal.c: In function 'init_gfx_term':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
terminal.c:821:9: note: in expansion of macro 'add_to_list'
  821 |         add_to_list(tb->windows, win);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
terminal.c:821:9: note: in expansion of macro 'add_to_list'
  821 |         add_to_list(tb->windows, win);
      |         ^~~~~~~~~~~
terminal.c: In function 't_kbd':
terminal.c:884:63: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  884 |                 if (ev.x == KBD_CTRL_C || ev.x == KBD_CLOSE) ((struct window *)(void *)&term->active_tab->windows)->prev->handler(term->active_tab->windows.prev, &ev, 0);
      |                                                              ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
terminal.c:885:23: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  885 |                 else ((struct window *)(void *)&term->active_tab->windows)->next->handler(term->active_tab->windows.next, &ev, 0);
      |                      ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
terminal.c: In function 't_mouse':
terminal.c:898:10: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  898 |         ((struct window *)(void *)&term->active_tab->windows)->next->handler(term->active_tab->windows.next, &ev, 0);
      |         ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
terminal.c: In function 'in_term':
terminal.c:961:68: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  961 |                 else if (ev->ev == EV_KBD && ev->x == KBD_CTRL_C) ((struct window *)(void *)&term->active_tab->windows)->prev->handler(term->active_tab->windows.prev, ev, 0);
      |                                                                   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
terminal.c:962:23: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  962 |                 else ((struct window *)(void *)&term->active_tab->windows)->next->handler(term->active_tab->windows.next, ev, 0);
      |                      ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
terminal.c: At top level:
terminal.c:980:33: warning: initializer-string for array of 'unsigned char' truncates NUL terminator but destination lacks 'nonstring' attribute (49 chars into 48 available) [-Wunterminated-string-initialization]
  980 | unsigned char frame_dumb[48] =  "   ||||++||++++++--|-+||++--|-+----++++++++     ";
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
terminal.c:981:33: warning: initializer-string for array of 'unsigned char' truncates NUL terminator but destination lacks 'nonstring' attribute (49 chars into 48 available) [-Wunterminated-string-initialization]
  981 | unsigned char frame_vt100[48] = "aaaxuuukkuxkjjjkmvwtqnttmlvwtqnvvwwmmllnnjla    ";
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
terminal.c: In function 'read_string':
terminal.c:1285:9: warning: ignoring return value of 'fscanf' declared with attribute 'warn_unused_result' [-Wunused-result]
 1285 |         fscanf(FIN, "%d:", &len);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~
terminal.c:1289:9: warning: ignoring return value of 'fread' declared with attribute 'warn_unused_result' [-Wunused-result]
 1289 |         fread(str, 1, len, FIN);
      |         ^~~~~~~~~~~~~~~~~~~~~~~
terminal.c: In function 'read_int':
terminal.c:1300:9: warning: ignoring return value of 'fscanf' declared with attribute 'warn_unused_result' [-Wunused-result]
 1300 |         fscanf(FIN, "%d:", &n);
      |         ^~~~~~~~~~~~~~~~~~~~~~
terminal.c: In function 'open_in_new_tab':
links.h:718:67: warning: array subscript 'struct window[0]' is partly outside array bounds of 'unsigned char[64]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
terminal.c:542:9: note: in expansion of macro 'add_to_list'
  542 |         add_to_list(tb->windows, win);
      |         ^~~~~~~~~~~
In function 'mem_calloc',
    inlined from 'open_in_new_tab' at terminal.c:529:19:
links.h:297:21: note: at offset 32 into object of size 64 allocated by 'calloc'
  297 | #define x_calloc(x) calloc((x), 1)
      |                     ^~~~~~~~~~~~~~
links.h:362:19: note: in expansion of macro 'x_calloc'
  362 |         if (!(p = x_calloc(size))) {
      |                   ^~~~~~~~
terminal.c: In function 'open_in_new_tab':
links.h:718:93: warning: array subscript 'struct window[0]' is partly outside array bounds of 'unsigned char[64]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
terminal.c:542:9: note: in expansion of macro 'add_to_list'
  542 |         add_to_list(tb->windows, win);
      |         ^~~~~~~~~~~
In function 'mem_calloc',
    inlined from 'open_in_new_tab' at terminal.c:529:19:
links.h:297:21: note: at offset 32 into object of size 64 allocated by 'calloc'
  297 | #define x_calloc(x) calloc((x), 1)
      |                     ^~~~~~~~~~~~~~
links.h:362:19: note: in expansion of macro 'x_calloc'
  362 |         if (!(p = x_calloc(size))) {
      |                   ^~~~~~~~
terminal.c: In function 'new_term_spec':
links.h:718:67: warning: array subscript 'struct term_spec[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
terminal.c:711:9: note: in expansion of macro 'add_to_list'
  711 |         add_to_list(term_specs, t);
      |         ^~~~~~~~~~~
terminal.c:691:18: note: object 'term_specs' of size 16
  691 | struct list_head term_specs = {&term_specs, &term_specs};
      |                  ^~~~~~~~~~
links.h:718:93: warning: array subscript 'struct term_spec[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
terminal.c:711:9: note: in expansion of macro 'add_to_list'
  711 |         add_to_list(term_specs, t);
      |         ^~~~~~~~~~~
terminal.c:691:18: note: object 'term_specs' of size 16
  691 | struct list_head term_specs = {&term_specs, &term_specs};
      |                  ^~~~~~~~~~
terminal.c: In function 'init_term':
links.h:718:67: warning: array subscript 'struct window[0]' is partly outside array bounds of 'unsigned char[64]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
terminal.c:758:9: note: in expansion of macro 'add_to_list'
  758 |         add_to_list(tb->windows, win);
      |         ^~~~~~~~~~~
In function 'mem_calloc',
    inlined from 'init_term' at terminal.c:730:7:
links.h:297:21: note: at offset 32 into object of size 64 allocated by 'calloc'
  297 | #define x_calloc(x) calloc((x), 1)
      |                     ^~~~~~~~~~~~~~
links.h:362:19: note: in expansion of macro 'x_calloc'
  362 |         if (!(p = x_calloc(size))) {
      |                   ^~~~~~~~
terminal.c: In function 'init_term':
links.h:718:93: warning: array subscript 'struct window[0]' is partly outside array bounds of 'unsigned char[64]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
terminal.c:758:9: note: in expansion of macro 'add_to_list'
  758 |         add_to_list(tb->windows, win);
      |         ^~~~~~~~~~~
In function 'mem_calloc',
    inlined from 'init_term' at terminal.c:730:7:
links.h:297:21: note: at offset 32 into object of size 64 allocated by 'calloc'
  297 | #define x_calloc(x) calloc((x), 1)
      |                     ^~~~~~~~~~~~~~
links.h:362:19: note: in expansion of macro 'x_calloc'
  362 |         if (!(p = x_calloc(size))) {
      |                   ^~~~~~~~
terminal.c: In function 'init_term':
links.h:718:67: warning: array subscript 'struct terminal[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
terminal.c:763:9: note: in expansion of macro 'add_to_list'
  763 |         add_to_list(terminals, term);
      |         ^~~~~~~~~~~
terminal.c:73:18: note: object 'terminals' of size 16
   73 | struct list_head terminals = {&terminals, &terminals};
      |                  ^~~~~~~~~
links.h:718:93: warning: array subscript 'struct terminal[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
terminal.c:763:9: note: in expansion of macro 'add_to_list'
  763 |         add_to_list(terminals, term);
      |         ^~~~~~~~~~~
terminal.c:73:18: note: object 'terminals' of size 16
   73 | struct list_head terminals = {&terminals, &terminals};
      |                  ^~~~~~~~~
terminal.c: In function 'init_gfx_term':
links.h:718:67: warning: array subscript 'struct window[0]' is partly outside array bounds of 'unsigned char[64]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
terminal.c:821:9: note: in expansion of macro 'add_to_list'
  821 |         add_to_list(tb->windows, win);
      |         ^~~~~~~~~~~
In function 'mem_calloc',
    inlined from 'init_gfx_term' at terminal.c:782:7:
links.h:297:21: note: at offset 32 into object of size 64 allocated by 'calloc'
  297 | #define x_calloc(x) calloc((x), 1)
      |                     ^~~~~~~~~~~~~~
links.h:362:19: note: in expansion of macro 'x_calloc'
  362 |         if (!(p = x_calloc(size))) {
      |                   ^~~~~~~~
terminal.c: In function 'init_gfx_term':
links.h:718:93: warning: array subscript 'struct window[0]' is partly outside array bounds of 'unsigned char[64]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
terminal.c:821:9: note: in expansion of macro 'add_to_list'
  821 |         add_to_list(tb->windows, win);
      |         ^~~~~~~~~~~
In function 'mem_calloc',
    inlined from 'init_gfx_term' at terminal.c:782:7:
links.h:297:21: note: at offset 32 into object of size 64 allocated by 'calloc'
  297 | #define x_calloc(x) calloc((x), 1)
      |                     ^~~~~~~~~~~~~~
links.h:362:19: note: in expansion of macro 'x_calloc'
  362 |         if (!(p = x_calloc(size))) {
      |                   ^~~~~~~~
terminal.c: In function 'init_gfx_term':
links.h:718:67: warning: array subscript 'struct terminal[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
terminal.c:822:9: note: in expansion of macro 'add_to_list'
  822 |         add_to_list(terminals, term);
      |         ^~~~~~~~~~~
terminal.c:73:18: note: object 'terminals' of size 16
   73 | struct list_head terminals = {&terminals, &terminals};
      |                  ^~~~~~~~~
links.h:718:93: warning: array subscript 'struct terminal[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
terminal.c:822:9: note: in expansion of macro 'add_to_list'
  822 |         add_to_list(terminals, term);
      |         ^~~~~~~~~~~
terminal.c:73:18: note: object 'terminals' of size 16
   73 | struct list_head terminals = {&terminals, &terminals};
      |                  ^~~~~~~~~
links.h:641:9: warning: '__builtin_strncpy' specified bound 256 equals destination size [-Wstringop-truncation]
  641 |         strncpy((char *)dst, (char *)src, dst_size);
      |         ^
terminal.c: In function 'close_tab':
links.h:718:67: warning: array subscript 'struct location[0]' is partly outside array bounds of 'unsigned char[40]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
terminal.c:1165:33: note: in expansion of macro 'add_to_list'
 1165 |                                 add_to_list(dt->history, l);
      |                                 ^~~~~~~~~~~
In function 'mem_alloc',
    inlined from 'close_tab' at terminal.c:1159:29:
links.h:351:19: note: at offset 16 into object of size 40 allocated by 'malloc'
  351 |         if (!(p = malloc(size))) {
      |                   ^~~~~~~~~~~~
terminal.c: In function 'close_tab':
links.h:718:93: warning: array subscript 'struct location[0]' is partly outside array bounds of 'unsigned char[40]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
terminal.c:1165:33: note: in expansion of macro 'add_to_list'
 1165 |                                 add_to_list(dt->history, l);
      |                                 ^~~~~~~~~~~
In function 'mem_alloc',
    inlined from 'close_tab' at terminal.c:1159:29:
links.h:351:19: note: at offset 16 into object of size 40 allocated by 'malloc'
  351 |         if (!(p = malloc(size))) {
      |                   ^~~~~~~~~~~~
In function 'read_list',
    inlined from 'read_location' at terminal.c:1480:3,
    inlined from 'read_location' at terminal.c:1471:18:
links.h:718:67: warning: array subscript 'struct location[0]' is partly outside array bounds of 'unsigned char[80]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                ~~~^~~~~~
terminal.c:1333:17: note: in expansion of macro 'add_at_pos'
 1333 |                 add_at_pos((struct location *)(head), h);
      |                 ^~~~~~~~~~
In function 'mem_alloc',
    inlined from 'read_location' at terminal.c:1475:9,
    inlined from 'read_location' at terminal.c:1471:18:
links.h:351:19: note: at offset 48 into object of size 80 allocated by 'malloc'
  351 |         if (!(p = malloc(size))) {
      |                   ^~~~~~~~~~~~
In function 'read_list',
    inlined from 'read_location' at terminal.c:1480:3,
    inlined from 'read_location' at terminal.c:1471:18:
links.h:718:99: warning: array subscript 'struct location[0]' is partly outside array bounds of 'unsigned char[80]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                          ~~~~~~~~~^~~~
terminal.c:1333:17: note: in expansion of macro 'add_at_pos'
 1333 |                 add_at_pos((struct location *)(head), h);
      |                 ^~~~~~~~~~
In function 'mem_alloc',
    inlined from 'read_location' at terminal.c:1475:9,
    inlined from 'read_location' at terminal.c:1471:18:
links.h:351:19: note: at offset 48 into object of size 80 allocated by 'malloc'
  351 |         if (!(p = malloc(size))) {
      |                   ^~~~~~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o session.o session.c
In file included from session.c:6:
session.c: In function 'start_download':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
session.c:971:9: note: in expansion of macro 'add_to_list'
  971 |         add_to_list(downloads, down);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
session.c:971:9: note: in expansion of macro 'add_to_list'
  971 |         add_to_list(downloads, down);
      |         ^~~~~~~~~~~
session.c: In function 'image_timer':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
session.c:1463:25: note: in expansion of macro 'add_to_list'
 1463 |                         add_to_list(new, ir);
      |                         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
session.c:1463:25: note: in expansion of macro 'add_to_list'
 1463 |                         add_to_list(new, ir);
      |                         ^~~~~~~~~~~
session.c: In function 'refresh_image':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
session.c:1486:9: note: in expansion of macro 'add_to_list'
 1486 |         add_to_list(fd->f_data->image_refresh, ir);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
session.c:1486:9: note: in expansion of macro 'add_to_list'
 1486 |         add_to_list(fd->f_data->image_refresh, ir);
      |         ^~~~~~~~~~~
session.c: In function 'continue_download':
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:65: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                 ^
session.c:2290:9: note: in expansion of macro 'add_to_list'
 2290 |         add_to_list(downloads, down);
      |         ^~~~~~~~~~~
links.h:719:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                                     ^
links.h:718:91: note: in definition of macro 'add_at_pos'
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                           ^
session.c:2290:9: note: in expansion of macro 'add_to_list'
 2290 |         add_to_list(downloads, down);
      |         ^~~~~~~~~~~
session.c: In function 'access_key_handler':
session.c:3029:31: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3029 |                         ev->x = -1;
      |                         ~~~~~~^~~~
session.c:3030:17: note: here
 3030 |                 case EV_KBD: ;
      |                 ^~~~
session.c: In function 'win_func':
session.c:3278:70: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3278 |                         if (!(ses = win->data = create_session(win)) || read_session_info(ses, (char *)ev->b + sizeof(int), *(int *)ev->b)) {
      |                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
session.c:3282:17: note: here
 3282 |                 case EV_RESIZE:
      |                 ^~~~
session.c: In function 'image_timer':
links.h:718:67: warning: array subscript 'struct image_refresh[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
session.c:1463:25: note: in expansion of macro 'add_to_list'
 1463 |                         add_to_list(new, ir);
      |                         ^~~~~~~~~~~
session.c:1454:26: note: object 'new' of size 16
 1454 |         struct list_head new;
      |                          ^~~
links.h:718:93: warning: array subscript 'struct image_refresh[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
session.c:1463:25: note: in expansion of macro 'add_to_list'
 1463 |                         add_to_list(new, ir);
      |                         ^~~~~~~~~~~
session.c:1454:26: note: object 'new' of size 16
 1454 |         struct list_head new;
      |                          ^~~
session.c: In function 'get_err_msg':
links.h:718:67: warning: array subscript 'struct strerror_val[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
session.c:110:9: note: in expansion of macro 'add_to_list'
  110 |         add_to_list(strerror_buf, s);
      |         ^~~~~~~~~~~
session.c:88:18: note: object 'strerror_buf' of size 16
   88 | struct list_head strerror_buf = { &strerror_buf, &strerror_buf };
      |                  ^~~~~~~~~~~~
links.h:718:93: warning: array subscript 'struct strerror_val[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
session.c:110:9: note: in expansion of macro 'add_to_list'
  110 |         add_to_list(strerror_buf, s);
      |         ^~~~~~~~~~~
session.c:88:18: note: object 'strerror_buf' of size 16
   88 | struct list_head strerror_buf = { &strerror_buf, &strerror_buf };
      |                  ^~~~~~~~~~~~
session.c: In function 'continue_download':
links.h:718:67: warning: array subscript 'struct download[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
session.c:2290:9: note: in expansion of macro 'add_to_list'
 2290 |         add_to_list(downloads, down);
      |         ^~~~~~~~~~~
session.c:8:18: note: object 'downloads' of size 16
    8 | struct list_head downloads = {&downloads, &downloads};
      |                  ^~~~~~~~~
links.h:718:93: warning: array subscript 'struct download[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
session.c:2290:9: note: in expansion of macro 'add_to_list'
 2290 |         add_to_list(downloads, down);
      |         ^~~~~~~~~~~
session.c:8:18: note: object 'downloads' of size 16
    8 | struct list_head downloads = {&downloads, &downloads};
      |                  ^~~~~~~~~
In file included from /usr/include/string.h:548,
                 from links.h:55:
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'continue_download' at session.c:2268:20:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'continue_download' at session.c:2269:15:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
session.c: In function 'start_download':
links.h:718:67: warning: array subscript 'struct download[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
session.c:971:9: note: in expansion of macro 'add_to_list'
  971 |         add_to_list(downloads, down);
      |         ^~~~~~~~~~~
session.c:8:18: note: object 'downloads' of size 16
    8 | struct list_head downloads = {&downloads, &downloads};
      |                  ^~~~~~~~~
links.h:718:93: warning: array subscript 'struct download[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
session.c:971:9: note: in expansion of macro 'add_to_list'
  971 |         add_to_list(downloads, down);
      |         ^~~~~~~~~~~
session.c:8:18: note: object 'downloads' of size 16
    8 | struct list_head downloads = {&downloads, &downloads};
      |                  ^~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'start_download' at session.c:966:20:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'vysad_okno' at session.c:2454:22:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
session.c: In function 'create_session':
links.h:718:67: warning: array subscript 'struct session[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                   ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
session.c:2800:9: note: in expansion of macro 'add_to_list'
 2800 |         add_to_list(sessions, ses);
      |         ^~~~~~~~~~~
session.c:80:18: note: object 'sessions' of size 16
   80 | struct list_head sessions = {&sessions, &sessions};
      |                  ^~~~~~~~
links.h:718:93: warning: array subscript 'struct session[0]' is partly outside array bounds of 'struct list_head[1]' [-Warray-bounds=]
  718 | #define add_at_pos(p,x) do {do_not_optimize_here(p); (x)->next=(p)->next; (x)->prev=(p); (p)->next=(x); (x)->next->prev=(x);do_not_optimize_here(p);} while(0)
      |                                                                                             ^~
links.h:719:26: note: in expansion of macro 'add_at_pos'
  719 | #define add_to_list(l,x) add_at_pos((typeof(x))(void *)&(l),(x))
      |                          ^~~~~~~~~~
session.c:2800:9: note: in expansion of macro 'add_to_list'
 2800 |         add_to_list(sessions, ses);
      |         ^~~~~~~~~~~
session.c:80:18: note: object 'sessions' of size 16
   80 | struct list_head sessions = {&sessions, &sessions};
      |                  ^~~~~~~~
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make[1]: Entering directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
gcc -DHAVE_CONFIG_H -I.   -I/usr/include/libpng16  -O2 -g -pipe -Wformat -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -m64 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection=full -Wall -W -Wextra -Wno-unused -Wno-pointer-sign -c -o view.o view.c
view.c: In function 'encode_multipart':
view.c:2174:17: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
 2174 |                 for (j = BL - 1; j >= 0; j--)
      |                 ^~~
view.c:2176:25: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
 2176 |                         if (bound[j]++ >= '9') bound[j] = '0';
      |                         ^~
view.c: In function 'draw_subtabs':
view.c:1073:25: warning: 'active_color' may be used uninitialized [-Wmaybe-uninitialized]
 1073 |                         term->dev->drv->fill_area(term->dev, x1, y1, x1 + 5, y2,
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1074 |                                         is_active ? active_color :
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~
 1075 |                                         semiactive ? semiactive_color : bfu_bg_color);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
view.c:1019:13: note: 'active_color' was declared here
 1019 |         int active_color, semiactive_color;
      |             ^~~~~~~~~~~~
view.c:1073:25: warning: 'semiactive_color' may be used uninitialized [-Wmaybe-uninitialized]
 1073 |                         term->dev->drv->fill_area(term->dev, x1, y1, x1 + 5, y2,
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1074 |                                         is_active ? active_color :
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~
 1075 |                                         semiactive ? semiactive_color : bfu_bg_color);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
view.c:1019:27: note: 'semiactive_color' was declared here
 1019 |         int active_color, semiactive_color;
      |                           ^~~~~~~~~~~~~~~~
view.c:1076:25: warning: 'active_style' may be used uninitialized [-Wmaybe-uninitialized]
 1076 |                         g_print_text(term->dev->drv, term->dev, x1 + 5, y1,
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1077 |                                         is_active ?  active_style :
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1078 |                                         semiactive ?  semiactive_style : bfu_style_bw, msg, &xr);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
view.c:1020:23: note: 'active_style' was declared here
 1020 |         struct style *active_style, *semiactive_style;
      |                       ^~~~~~~~~~~~
view.c:1076:25: warning: 'semiactive_style' may be used uninitialized [-Wmaybe-uninitialized]
 1076 |                         g_print_text(term->dev->drv, term->dev, x1 + 5, y1,
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1077 |                                         is_active ?  active_style :
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1078 |                                         semiactive ?  semiactive_style : bfu_style_bw, msg, &xr);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
view.c:1020:38: note: 'semiactive_style' was declared here
 1020 |         struct style *active_style, *semiactive_style;
      |                                      ^~~~~~~~~~~~~~~~
In file included from /usr/include/string.h:548,
                 from links.h:55,
                 from view.c:6:
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'encode_controls' at view.c:2074:13:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'frm_download_image' at view.c:3901:21:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'memcpy',
    inlined from 'memacpy' at links.h:434:2,
    inlined from 'stracpy' at links.h:441:15,
    inlined from 'copy_url_location' at view.c:3979:50:
/usr/include/bits/string_fortified.h:29:10: warning: '__builtin_memcpy' specified bound 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
view.c: In function 'print_current_linkx':
view.c:4345:16: warning: 'm' may be used uninitialized [-Wmaybe-uninitialized]
 4345 |         return m;
      |                ^
view.c:4237:24: note: 'm' declared here
 4237 |         unsigned char *m;
      |                        ^
view.c: In function 'print_current_linkx_plus':
view.c:4480:16: warning: 'm' may be used uninitialized [-Wmaybe-uninitialized]
 4480 |         return m;
      |                ^
view.c:4355:24: note: 'm' declared here
 4355 |         unsigned char *m;
      |                        ^
make[1]: Leaving directory '/home/pterjan/rpmbuild/BUILD/linkx-2.2-build/linkx/linkx'
make: *** [Makefile:380: all] Error 2
error: Bad exit status from /home/pterjan/rpmbuild/tmp/rpm-tmp.Awvxi2 (%build)

RPM build errors:
    Bad exit status from /home/pterjan/rpmbuild/tmp/rpm-tmp.Awvxi2 (%build)
I: [iurt_root_command] ERROR: chroot