request from: hawk checking if we should skip the build started at: Thu Jul 20 18:52:36 2023 killing old processes on a builder sending signal 9 to pid -1 cleaning up /tmp fetching http://src.tld-linux.org/~buildertidev//srpms/46b4e544-ba99-49b6-9a2d-eb6dbe71e0c1/seabios-1.16.2-1.src.rpm fetched 645212 bytes, 21129.3 K/s installing srpm: seabios-1.16.2-1.src.rpm + install -d /tmp/B.mbqtj2yn/BUILD /tmp/B.mbqtj2yn/RPMS + LC_ALL=en_US.UTF-8 + rpm -qp --changelog seabios-1.16.2-1.src.rpm * Thu Jul 20 2023 TLD Linux - For complete changelog see: http://git.tld-linux.org/?p=packages/seabios.git;a=log;h=master * Thu Jul 20 2023 Marcin Krol c0e0895 - 1.16.2 from PLD * Sun Dec 15 2019 Marcin Krol 39d903b - updated to 1.13.0 * Mon Aug 26 2019 Marcin Krol 00e04df - updated to 1.12.0 * Wed Apr 11 2018 Marcin Krol b890b63 - updated to 1.11.0 * Sat Feb 11 2017 Marcin Krol 0ed89fa - updated to 1.10.1 * Fri Mar 25 2016 Marcin Krol fcd40ab - updated to 1.9.1 * Tue Aug 25 2015 Marcin Krol c07521a - correct spec for 1.8.2 * Tue Aug 25 2015 Marcin Krol e5fb81a - from PLD, updated to 1.8.2, dropped binary - we are x86 only distro + rpm -Uhv --nodeps --define '_topdir /tmp/B.mbqtj2yn' --define '_specdir %{_topdir}' --define '_sourcedir %{_specdir}' --define '_rpmdir %{_topdir}/RPMS' --define '_builddir %{_topdir}/BUILD' seabios-1.16.2-1.src.rpm Updating / installing... seabios-1.16.2-1 ######################################## + rm -f seabios-1.16.2-1.src.rpm + install -m 700 -d /tmp/B.mbqtj2yn/BUILD/tmp + TMPDIR=/tmp/B.mbqtj2yn/BUILD/tmp + exec nice -n 19 rpmbuild -bp --short-circuit --nodeps --define '_topdir /tmp/B.mbqtj2yn' --define '_specdir %{_topdir}' --define '_sourcedir %{_specdir}' --define '_rpmdir %{_topdir}/RPMS' --define '_builddir %{_topdir}/BUILD' --target i686-tld-linux --define 'prep exit 0' /tmp/B.mbqtj2yn/seabios.spec warning: Could not canonicalize hostname: tld-x86 Building target platforms: i686-tld-linux Building for target i686-tld-linux RPM build warnings: Could not canonicalize hostname: tld-x86 checking BuildConflict-ing packages no BuildConflicts found checking BR rpm: warning: Could not canonicalize hostname: tld-x86 rpm: error: Failed build dependencies: rpm: acpica is needed by seabios-1.16.2-1.i686 rpm: Building target platforms: i686-tld-linux rpm: Building for target i686-tld-linux rpm: rpm: RPM build warnings: rpm: Could not canonicalize hostname: tld-x86 updating poldek cache... ti is up to date ti is up to date Retrieving ti-test::packages.ndir.diff.toc.gz..............................................done Retrieving diff::packages.ndir.2023.07.20-16.44.01.gz......................................done Loading [pndir]ti-test... Applying packages.ndir.2023.07.20-16.44.01.gz... Writing /root/.cache/poldek/[...]/packages.ndir.gz... Retrieving ti-test::packages.ndir.diff.toc.gz..............................................done Loading [pndir]ti-test... Applying packages.ndir.2023.07.20-15.17.01.gz... Writing /root/.cache/poldek/[...]/packages.ndir.gz... checking conflicting packages in BRed packages poldek: Loading [pndir]ti... poldek: Loading [pndir]ti... poldek: Loading [pndir]ti-test... poldek: Loading [pndir]ti-test... poldek: 10738 packages read poldek: Removed 2407 duplicate packages from available set poldek: Processing dependencies... poldek: There are 1 package to install: poldek: A acpica-20220331-1 poldek: This operation will use 2.6MB of disk space. poldek: Need to get 696.8KB of archives (696.8KB to download). poldek: poldek: Retrieving ti-test::acpica-20220331-1.i686.rpm.............................................done poldek: acpica-20220331-1.i686.rpm: digests OK poldek: Executing pm-command.sh --upgrade -vh --test --root / --define _check_dirname_deps 0... poldek: Verifying... ######################################## poldek: Preparing... ######################################## no conflicts found checking BR rpm: warning: Could not canonicalize hostname: tld-x86 rpm: error: Failed build dependencies: rpm: acpica is needed by seabios-1.16.2-1.i686 rpm: Building target platforms: i686-tld-linux rpm: Building for target i686-tld-linux rpm: rpm: RPM build warnings: rpm: Could not canonicalize hostname: tld-x86 installing BR: acpica + poldek --noask --caplookup -Q -v '--ignore=hhvm-*' '--ignore=php72-*' '--ignore=php73-*' '--ignore=php74-*' '--ignore=php80-*' --upgrade acpica Loading [pndir]ti... Loading [pndir]ti... Loading [pndir]ti-test... Loading [pndir]ti-test... 10738 packages read Removed 2407 duplicate packages from available set Processing dependencies... There are 1 package to install: A acpica-20220331-1 This operation will use 2.6MB of disk space. acpica-20220331-1.i686.rpm: digests OK Need to get 696.8KB of archives. acpica-20220331-1.i686.rpm: digests OK Executing pm-command.sh --upgrade -vh --root / --define _check_dirname_deps 0... Verifying... ######################################## Preparing... ######################################## Updating / installing... acpica-20220331-1 ######################################## building RPM using: set -ex; : build-id: 46b4e544-ba99-49b6-9a2d-eb6dbe71e0c1; TMPDIR=/tmp/B.mbqtj2yn/BUILD/tmp exec nice -n 19 rpmbuild -bb --define '_smp_mflags -j4' --define '_make_opts -Otarget' --define '_tld_builder 1' --define '_topdir /tmp/B.mbqtj2yn' --define '_specdir %{_topdir}' --define '_sourcedir %{_specdir}' --define '_rpmdir %{_topdir}/RPMS' --define '_builddir %{_topdir}/BUILD' --target i686-tld-linux /tmp/B.mbqtj2yn/seabios.spec + : build-id: 46b4e544-ba99-49b6-9a2d-eb6dbe71e0c1 + TMPDIR=/tmp/B.mbqtj2yn/BUILD/tmp + exec nice -n 19 rpmbuild -bb --define '_smp_mflags -j4' --define '_make_opts -Otarget' --define '_tld_builder 1' --define '_topdir /tmp/B.mbqtj2yn' --define '_specdir %{_topdir}' --define '_sourcedir %{_specdir}' --define '_rpmdir %{_topdir}/RPMS' --define '_builddir %{_topdir}/BUILD' --target i686-tld-linux /tmp/B.mbqtj2yn/seabios.spec warning: Could not canonicalize hostname: tld-x86 Building target platforms: i686-tld-linux Building for target i686-tld-linux Executing(%prep): /bin/sh -e /tmp/B.mbqtj2yn/BUILD/tmp/rpm-tmp.66B7P8 + umask 022 + cd /tmp/B.mbqtj2yn/BUILD + cd /tmp/B.mbqtj2yn/BUILD + rm -rf seabios-1.16.2 + /bin/gzip -dc /tmp/B.mbqtj2yn/seabios-1.16.2.tar.gz + /bin/tar -xof - + STATUS=0 + '[' 0 -ne 0 ']' + cd seabios-1.16.2 + /bin/chmod -Rf a+rX,u+w,g-w,o-w . + RPM_EC=0 + jobs -p + exit 0 Executing(%build): /bin/sh -e /tmp/B.mbqtj2yn/BUILD/tmp/rpm-tmp.Sanlzq TMP=/home/users/builder/tmp HOME=/home/users/builder PATH=/bin:/usr/bin:/usr/X11R6/bin:/usr/local/bin:/home/users/builder/bin TMPDIR=/tmp/B.mbqtj2yn/BUILD/tmp + umask 022 + cd /tmp/B.mbqtj2yn/BUILD + cd seabios-1.16.2 + /usr/bin/make -Otarget -j4 'V=1' 'PYTHON=/usr/bin/python3' mkdir -p out//scripts/kconfig/lxdialog mkdir -p out//include/config mkdir -p out/src out/src/hw out/src/fw out/vgasrc /usr/bin/make -C out/ -f /tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/scripts/kconfig/Makefile srctree=/tmp/B.mbqtj2yn/BUILD/seabios-1.16.2 src=scripts/kconfig obj=scripts/kconfig Q= Kconfig=/tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/src/Kconfig olddefconfig make[1]: Entering directory '/tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/out' make[1]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule. make[1]: Leaving directory '/tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/out' make[1]: Entering directory '/tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/out' cc -Iscripts/kconfig -I/tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/scripts/kconfig -I/usr/include/ncursesw -DCURSES_LOC="" -DNCURSES_WIDECHAR=1 -DLOCALE -c -o scripts/kconfig/conf.o /tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/scripts/kconfig/conf.c cat /tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/scripts/kconfig/zconf.tab.c_shipped > scripts/kconfig/zconf.tab.c cat /tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/scripts/kconfig/zconf.lex.c_shipped > scripts/kconfig/zconf.lex.c cat /tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/scripts/kconfig/zconf.hash.c_shipped > scripts/kconfig/zconf.hash.c cc -Iscripts/kconfig -I/tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/scripts/kconfig -Iscripts/kconfig -I/usr/include/ncursesw -DCURSES_LOC="" -DNCURSES_WIDECHAR=1 -DLOCALE -c -o scripts/kconfig/zconf.tab.o scripts/kconfig/zconf.tab.c cc -o scripts/kconfig/conf scripts/kconfig/conf.o scripts/kconfig/zconf.tab.o scripts/kconfig/conf --olddefconfig /tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/src/Kconfig # # configuration written to /tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/.config # make[1]: Leaving directory '/tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/out' mkdir -p out//scripts/kconfig/lxdialog mkdir -p out//include/config mkdir -p out/src out/src/hw out/src/fw out/vgasrc /usr/bin/make -C out/ -f /tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/scripts/kconfig/Makefile srctree=/tmp/B.mbqtj2yn/BUILD/seabios-1.16.2 src=scripts/kconfig obj=scripts/kconfig Q= Kconfig=/tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/src/Kconfig silentoldconfig make[1]: Entering directory '/tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/out' make[1]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule. make[1]: Leaving directory '/tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/out' make[1]: Entering directory '/tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/out' Build Kconfig config file mkdir -p include/config include/generated scripts/kconfig/conf --silentoldconfig /tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/src/Kconfig make[1]: Leaving directory '/tmp/B.mbqtj2yn/BUILD/seabios-1.16.2/out' Compiling to assembler out/src/asm-offsets.s cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODESEGMENT=1 -fno-defer-pop -fno-jump-tables -fno-tree-switch-conversion -DMODE16=1 -m16 --param large-stack-frame=4 -S -c src/asm-offsets.c -o out/src/asm-offsets.s Compile checking out/src/misc.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/misc.c -o out/src/misc.o In file included from src/biosvar.h:10, from src/misc.c:8: src/misc.c: In function 'handle_12': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/misc.c:36:16: note: in expansion of macro 'GET_BDA' 36 | regs->ax = GET_BDA(mem_size_kb); | ^~~~~~~ cc1: note: source object is likely at address zero src/misc.c: In function 'handle_11': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/misc.c:44:16: note: in expansion of macro 'GET_BDA' 44 | regs->ax = GET_BDA(equipment_list_flags); | ^~~~~~~ cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'mathcp_setup' at src/misc.c:66:5: src/biosvar.h:43:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 43 | u16 eqf = GET_BDA(equipment_list_flags); | ^~~ In function 'mathcp_setup': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'mathcp_setup' at src/misc.c:66:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/biosvar.h:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(equipment_list_flags, (eqf & ~clear) | set); | ^~~~~~~ In function 'mathcp_setup': cc1: note: source object is likely at address zero Compile checking out/src/string.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/string.c -o out/src/string.o Compile checking out/src/stacks.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/stacks.c -o out/src/stacks.o Compile checking out/src/output.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/output.c -o out/src/output.o In file included from src/output.c:9: src/output.c: In function 'screenc': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:20:5: note: in expansion of macro 'GET_FARVAR' 20 | GET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector]) | ^~~~~~~~~~ src/output.c:77:25: note: in expansion of macro 'GET_IVT' 77 | if (!MODESEGMENT && GET_IVT(0x10).segoff == FUNC16(entry_10).segoff) | ^~~~~~~ cc1: note: source object is likely at address zero Compile checking out/src/block.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/block.c -o out/src/block.o src/block.c: In function 'map_hd_drive': src/block.c:261:19: warning: array subscript 0 is outside array bounds of 'struct bios_data_area_s[0]' [-Warray-bounds=] 261 | int hdid = bda->hdcount; | ^~ cc1: note: source object is likely at address zero In file included from src/biosvar.h:10, from src/block.c:8: In function 'get_ebda_seg', inlined from 'get_ebda_ptr' at src/biosvar.h:66:12, inlined from 'fill_fdpt' at src/block.c:213:28, inlined from 'map_hd_drive' at src/block.c:269:5: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/biosvar.h:60:12: note: in expansion of macro 'GET_BDA' 60 | return GET_BDA(ebda_seg); | ^~~~~~~ In function 'map_hd_drive': cc1: note: source object is likely at address zero In function 'get_ebda_seg', inlined from 'fill_fdpt' at src/block.c:239:9, inlined from 'map_hd_drive' at src/block.c:269:5: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/biosvar.h:60:12: note: in expansion of macro 'GET_BDA' 60 | return GET_BDA(ebda_seg); | ^~~~~~~ In function 'map_hd_drive': cc1: note: source object is likely at address zero In function 'fill_fdpt', inlined from 'map_hd_drive' at src/block.c:269:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/block.c:239:9: note: in expansion of macro 'SET_IVT' 239 | SET_IVT(0x46, SEGOFF(get_ebda_seg(), offsetof( | ^~~~~~~ In function 'map_hd_drive': cc1: note: source object is likely at address zero In function 'fill_fdpt', inlined from 'map_hd_drive' at src/block.c:269:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/block.c:239:9: note: in expansion of macro 'SET_IVT' 239 | SET_IVT(0x46, SEGOFF(get_ebda_seg(), offsetof( | ^~~~~~~ In function 'map_hd_drive': cc1: note: source object is likely at address zero In function 'get_ebda_seg', inlined from 'fill_fdpt' at src/block.c:236:9, inlined from 'map_hd_drive' at src/block.c:269:5: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/biosvar.h:60:12: note: in expansion of macro 'GET_BDA' 60 | return GET_BDA(ebda_seg); | ^~~~~~~ In function 'map_hd_drive': cc1: note: source object is likely at address zero In function 'fill_fdpt', inlined from 'map_hd_drive' at src/block.c:269:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/block.c:236:9: note: in expansion of macro 'SET_IVT' 236 | SET_IVT(0x41, SEGOFF(get_ebda_seg(), offsetof( | ^~~~~~~ In function 'map_hd_drive': cc1: note: source object is likely at address zero In function 'fill_fdpt', inlined from 'map_hd_drive' at src/block.c:269:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/block.c:236:9: note: in expansion of macro 'SET_IVT' 236 | SET_IVT(0x41, SEGOFF(get_ebda_seg(), offsetof( | ^~~~~~~ In function 'map_hd_drive': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'map_floppy_drive' at src/block.c:296:9: src/biosvar.h:43:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 43 | u16 eqf = GET_BDA(equipment_list_flags); | ^~~ In function 'map_floppy_drive': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'map_floppy_drive' at src/block.c:296:9: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/biosvar.h:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(equipment_list_flags, (eqf & ~clear) | set); | ^~~~~~~ In function 'map_floppy_drive': cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/block.c:297:9: note: in expansion of macro 'SET_BDA' 297 | SET_BDA(floppy_harddisk_info, 0x77); | ^~~~~~~ cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'map_floppy_drive' at src/block.c:292:9: src/biosvar.h:43:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 43 | u16 eqf = GET_BDA(equipment_list_flags); | ^~~ In function 'map_floppy_drive': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'map_floppy_drive' at src/block.c:292:9: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/biosvar.h:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(equipment_list_flags, (eqf & ~clear) | set); | ^~~~~~~ In function 'map_floppy_drive': cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/block.c:293:9: note: in expansion of macro 'SET_BDA' 293 | SET_BDA(floppy_harddisk_info, 0x07); | ^~~~~~~ cc1: note: source object is likely at address zero Compile checking out/src/cdrom.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/cdrom.c -o out/src/cdrom.o In file included from src/biosvar.h:10, from src/cdrom.c:8: src/cdrom.c: In function 'cdrom_boot': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:38: note: in definition of macro 'SET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~ src/cdrom.c:264:9: note: in expansion of macro 'SET_BDA' 264 | SET_BDA(hdcount, GET_BDA(hdcount) + 1); | ^~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/cdrom.c:264:26: note: in expansion of macro 'GET_BDA' 264 | SET_BDA(hdcount, GET_BDA(hdcount) + 1); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/cdrom.c:264:9: note: in expansion of macro 'SET_BDA' 264 | SET_BDA(hdcount, GET_BDA(hdcount) + 1); | ^~~~~~~ cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'cdrom_boot' at src/cdrom.c:242:9: src/biosvar.h:43:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 43 | u16 eqf = GET_BDA(equipment_list_flags); | ^~~ In function 'cdrom_boot': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'cdrom_boot' at src/cdrom.c:242:9: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/biosvar.h:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(equipment_list_flags, (eqf & ~clear) | set); | ^~~~~~~ In function 'cdrom_boot': cc1: note: source object is likely at address zero Compile checking out/src/mouse.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/mouse.c -o out/src/mouse.o In file included from src/mouse.c:8: In function 'set_equipment_flags', inlined from 'mouse_init' at src/mouse.c:23:5: src/biosvar.h:43:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 43 | u16 eqf = GET_BDA(equipment_list_flags); | ^~~ In function 'mouse_init': cc1: note: source object is likely at address zero In file included from src/biosvar.h:10: In function 'set_equipment_flags', inlined from 'mouse_init' at src/mouse.c:23:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/biosvar.h:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(equipment_list_flags, (eqf & ~clear) | set); | ^~~~~~~ In function 'mouse_init': cc1: note: source object is likely at address zero In function 'get_ebda_seg', inlined from 'mouse_15c207' at src/mouse.c:231:20, inlined from 'handle_15c2' at src/mouse.c:272:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/biosvar.h:60:12: note: in expansion of macro 'GET_BDA' 60 | return GET_BDA(ebda_seg); | ^~~~~~~ In function 'handle_15c2': cc1: note: source object is likely at address zero In function 'get_ebda_seg', inlined from 'mouse_15c205' at src/mouse.c:162:20, inlined from 'handle_15c2' at src/mouse.c:270:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/biosvar.h:60:12: note: in expansion of macro 'GET_BDA' 60 | return GET_BDA(ebda_seg); | ^~~~~~~ In function 'handle_15c2': cc1: note: source object is likely at address zero In function 'get_ebda_seg', inlined from 'mouse_15c20001' at src/mouse.c:56:20, inlined from 'mouse_15c200' at src/mouse.c:82:16, inlined from 'handle_15c2' at src/mouse.c:265:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/biosvar.h:60:12: note: in expansion of macro 'GET_BDA' 60 | return GET_BDA(ebda_seg); | ^~~~~~~ In function 'handle_15c2': cc1: note: source object is likely at address zero In function 'get_ebda_seg', inlined from 'process_mouse' at src/mouse.c:322:20: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/biosvar.h:60:12: note: in expansion of macro 'GET_BDA' 60 | return GET_BDA(ebda_seg); | ^~~~~~~ In function 'process_mouse': cc1: note: source object is likely at address zero Compile checking out/src/disk.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/disk.c -o out/src/disk.o In file included from src/biosvar.h:10, from src/disk.c:8: src/disk.c: In function '__disk_ret_unimplemented': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/disk.c:45:9: note: in expansion of macro 'SET_BDA' 45 | SET_BDA(disk_last_status, code); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/disk.c:43:9: note: in expansion of macro 'SET_BDA' 43 | SET_BDA(floppy_last_status, code); | ^~~~~~~ cc1: note: source object is likely at address zero src/disk.c: In function '__disk_ret': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/disk.c:31:9: note: in expansion of macro 'SET_BDA' 31 | SET_BDA(disk_last_status, code); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/disk.c:29:9: note: in expansion of macro 'SET_BDA' 29 | SET_BDA(floppy_last_status, code); | ^~~~~~~ cc1: note: source object is likely at address zero src/disk.c: In function 'disk_1308': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/disk.c:297:17: note: in expansion of macro 'GET_BDA' 297 | count = GET_BDA(hdcount); | ^~~~~~~ cc1: note: source object is likely at address zero src/disk.c: In function 'disk_13': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/disk.c:626:5: note: in expansion of macro 'SET_BDA' 626 | SET_BDA(disk_interrupt_flag, 0); | ^~~~~~~ cc1: note: source object is likely at address zero In function 'disk_1301', inlined from 'disk_13' at src/disk.c:630:16: src/disk.c:218:11: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 218 | v = GET_BDA(disk_last_status); In function 'disk_13': cc1: note: source object is likely at address zero In function 'disk_1301', inlined from 'disk_13' at src/disk.c:630:16: src/disk.c:216:11: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 216 | v = GET_BDA(floppy_last_status); In function 'disk_13': cc1: note: source object is likely at address zero src/disk.c: In function 'handle_76': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/disk.c:777:5: note: in expansion of macro 'SET_BDA' 777 | SET_BDA(disk_interrupt_flag, 0xff); | ^~~~~~~ cc1: note: source object is likely at address zero Compile checking out/src/system.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/system.c -o out/src/system.o In file included from src/biosvar.h:10, from src/system.c:8: In function 'get_ebda_seg', inlined from 'handle_15c1' at src/system.c:255:16, inlined from 'handle_15' at src/system.c:352:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/biosvar.h:60:12: note: in expansion of macro 'GET_BDA' 60 | return GET_BDA(ebda_seg); | ^~~~~~~ In function 'handle_15': cc1: note: source object is likely at address zero Compile checking out/src/kbd.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/kbd.c -o out/src/kbd.o In file included from src/biosvar.h:10, from src/kbd.c:8: src/kbd.c: In function 'kbd_set_flag': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:397:18: note: in expansion of macro 'GET_BDA' 397 | u16 flags0 = GET_BDA(kbd_flag0); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:398:17: note: in expansion of macro 'GET_BDA' 398 | u8 flags1 = GET_BDA(kbd_flag1); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:407:5: note: in expansion of macro 'SET_BDA' 407 | SET_BDA(kbd_flag0, flags0); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:408:5: note: in expansion of macro 'SET_BDA' 408 | SET_BDA(kbd_flag1, flags1); | ^~~~~~~ cc1: note: source object is likely at address zero src/kbd.c: In function 'set_leds': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:230:23: note: in expansion of macro 'GET_BDA' 230 | u8 shift_flags = (GET_BDA(kbd_flag0) >> 4) & 0x07; | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:231:18: note: in expansion of macro 'GET_BDA' 231 | u8 kbd_led = GET_BDA(kbd_led); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:241:5: note: in expansion of macro 'SET_BDA' 241 | SET_BDA(kbd_led, kbd_led); | ^~~~~~~ cc1: note: source object is likely at address zero src/kbd.c: In function 'dequeue_key': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:61:23: note: in expansion of macro 'GET_BDA' 61 | buffer_head = GET_BDA(kbd_buf_head); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:62:23: note: in expansion of macro 'GET_BDA' 62 | buffer_tail = GET_BDA(kbd_buf_tail); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:98:24: note: in expansion of macro 'GET_BDA' 98 | u16 buffer_start = GET_BDA(kbd_buf_start_offset); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:99:24: note: in expansion of macro 'GET_BDA' 99 | u16 buffer_end = GET_BDA(kbd_buf_end_offset); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:104:5: note: in expansion of macro 'SET_BDA' 104 | SET_BDA(kbd_buf_head, buffer_head); | ^~~~~~~ cc1: note: source object is likely at address zero src/kbd.c: In function 'kbd_init': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:23:5: note: in expansion of macro 'SET_BDA' 23 | SET_BDA(kbd_flag1, KF1_101KBD); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:24:5: note: in expansion of macro 'SET_BDA' 24 | SET_BDA(kbd_buf_head, x); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:25:5: note: in expansion of macro 'SET_BDA' 25 | SET_BDA(kbd_buf_tail, x); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:26:5: note: in expansion of macro 'SET_BDA' 26 | SET_BDA(kbd_buf_start_offset, x); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:28:5: note: in expansion of macro 'SET_BDA' 28 | SET_BDA(kbd_buf_end_offset | ^~~~~~~ cc1: note: source object is likely at address zero src/kbd.c: In function 'enqueue_key': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:35:24: note: in expansion of macro 'GET_BDA' 35 | u16 buffer_start = GET_BDA(kbd_buf_start_offset); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:36:24: note: in expansion of macro 'GET_BDA' 36 | u16 buffer_end = GET_BDA(kbd_buf_end_offset); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:38:23: note: in expansion of macro 'GET_BDA' 38 | u16 buffer_head = GET_BDA(kbd_buf_head); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:39:23: note: in expansion of macro 'GET_BDA' 39 | u16 buffer_tail = GET_BDA(kbd_buf_tail); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:50:5: note: in expansion of macro 'SET_BDA' 50 | SET_BDA(kbd_buf_tail, buffer_tail); | ^~~~~~~ cc1: note: source object is likely at address zero In function 'handle_1612', inlined from 'handle_16' at src/kbd.c:264:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:193:18: note: in expansion of macro 'GET_BDA' 193 | regs->ax = ((GET_BDA(kbd_flag0) & ~((KF1_RCTRL|KF1_RALT) << 8)) | ^~~~~~~ In function 'handle_16': cc1: note: source object is likely at address zero In function 'handle_1612', inlined from 'handle_16' at src/kbd.c:264:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:194:21: note: in expansion of macro 'GET_BDA' 194 | | ((GET_BDA(kbd_flag1) & (KF1_RCTRL|KF1_RALT)) << 8)); | ^~~~~~~ In function 'handle_16': cc1: note: source object is likely at address zero In function 'handle_1602', inlined from 'handle_16' at src/kbd.c:258:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:134:16: note: in expansion of macro 'GET_BDA' 134 | regs->al = GET_BDA(kbd_flag0); | ^~~~~~~ In function 'handle_16': cc1: note: source object is likely at address zero In function '__process_key', inlined from 'process_key' at src/kbd.c:598:5: src/kbd.c:459:8: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 459 | u8 flags1 = GET_BDA(kbd_flag1); | ^~~~~~ In function 'process_key': cc1: note: source object is likely at address zero In function '__process_key', inlined from 'process_key' at src/kbd.c:598:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:473:9: note: in expansion of macro 'SET_BDA' 473 | SET_BDA(kbd_flag1, flags1 & ~(KF1_LAST_E0|KF1_LAST_E1)); | ^~~~~~~ In function 'process_key': cc1: note: source object is likely at address zero In function '__process_key', inlined from 'process_key' at src/kbd.c:598:5: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/kbd.c:529:14: note: in expansion of macro 'GET_BDA' 529 | if ((GET_BDA(kbd_flag0) & (KF0_CTRLACTIVE|KF0_ALTACTIVE)) | ^~~~~~~ In function 'process_key': cc1: note: source object is likely at address zero In function '__process_key', inlined from 'process_key' at src/kbd.c:598:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:532:13: note: in expansion of macro 'SET_BDA' 532 | SET_BDA(soft_reset_flag, 0x1234); | ^~~~~~~ In function 'process_key': cc1: note: source object is likely at address zero In function 'kbd_ctrl_break', inlined from '__process_key' at src/kbd.c:513:13, inlined from 'process_key' at src/kbd.c:598:5: src/kbd.c:417:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 417 | u16 buffer_start = GET_BDA(kbd_buf_start_offset); | ^~~~~~~~~~~~ In function 'process_key': cc1: note: source object is likely at address zero In function 'kbd_ctrl_break', inlined from '__process_key' at src/kbd.c:513:13, inlined from 'process_key' at src/kbd.c:598:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:418:5: note: in expansion of macro 'SET_BDA' 418 | SET_BDA(kbd_buf_head, buffer_start); | ^~~~~~~ In function 'process_key': cc1: note: source object is likely at address zero In function 'kbd_ctrl_break', inlined from '__process_key' at src/kbd.c:513:13, inlined from 'process_key' at src/kbd.c:598:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:419:5: note: in expansion of macro 'SET_BDA' 419 | SET_BDA(kbd_buf_tail, buffer_start+2); | ^~~~~~~ In function 'process_key': cc1: note: source object is likely at address zero In function 'kbd_ctrl_break', inlined from '__process_key' at src/kbd.c:513:13, inlined from 'process_key' at src/kbd.c:598:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:422:5: note: in expansion of macro 'SET_BDA' 422 | SET_BDA(break_flag, 0x80); | ^~~~~~~ In function 'process_key': cc1: note: source object is likely at address zero In function '__process_key', inlined from 'process_key' at src/kbd.c:598:5: src/kbd.c:552:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 552 | u16 flags0 = GET_BDA(kbd_flag0); | ^~~~~~ In function 'process_key': cc1: note: source object is likely at address zero In function '__process_key', inlined from 'process_key' at src/kbd.c:598:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/kbd.c:463:9: note: in expansion of macro 'SET_BDA' 463 | SET_BDA(kbd_flag1, flags1 | eflag); | ^~~~~~~ In function 'process_key': cc1: note: source object is likely at address zero Compile checking out/src/serial.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/serial.c -o out/src/serial.o In file included from src/serial.c:8: In function 'set_equipment_flags', inlined from 'serial_setup' at src/serial.c:56:5: src/biosvar.h:43:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 43 | u16 eqf = GET_BDA(equipment_list_flags); | ^~~ In function 'serial_setup': cc1: note: source object is likely at address zero In file included from src/biosvar.h:10: In function 'set_equipment_flags', inlined from 'serial_setup' at src/serial.c:56:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/biosvar.h:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(equipment_list_flags, (eqf & ~clear) | set); | ^~~~~~~ In function 'serial_setup': cc1: note: source object is likely at address zero In function 'detect_parport', inlined from 'lpt_setup' at src/serial.c:212:14: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/serial.c:199:5: note: in expansion of macro 'SET_BDA' 199 | SET_BDA(port_lpt[count], port); | ^~~~~~~ In function 'lpt_setup': cc1: note: source object is likely at address zero In function 'detect_parport', inlined from 'lpt_setup' at src/serial.c:212:14: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/serial.c:200:5: note: in expansion of macro 'SET_BDA' 200 | SET_BDA(lpt_timeout[count], timeout); | ^~~~~~~ In function 'lpt_setup': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'lpt_setup' at src/serial.c:217:5: src/biosvar.h:43:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 43 | u16 eqf = GET_BDA(equipment_list_flags); | ^~~ In function 'lpt_setup': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'lpt_setup' at src/serial.c:217:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/biosvar.h:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(equipment_list_flags, (eqf & ~clear) | set); | ^~~~~~~ In function 'lpt_setup': cc1: note: source object is likely at address zero Compile checking out/src/resume.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/resume.c -o out/src/resume.o Compile checking out/src/pnpbios.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/pnpbios.c -o out/src/pnpbios.o Compile checking out/src/pcibios.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/pcibios.c -o out/src/pcibios.o Compile checking out/src/clock.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/clock.c -o out/src/clock.o In file included from src/biosvar.h:10, from src/clock.c:8: src/clock.c: In function 'clear_usertimer': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/clock.c:383:11: note: in expansion of macro 'GET_BDA' 383 | if (!(GET_BDA(rtc_wait_flag) & RWS_WAIT_PENDING)) | ^~~~~~~ cc1: note: source object is likely at address zero In function 'clear_usertimer', inlined from 'clear_usertimer' at src/clock.c:381:1: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:386:5: note: in expansion of macro 'SET_BDA' 386 | SET_BDA(rtc_wait_flag, 0); | ^~~~~~~ In function 'clear_usertimer': cc1: note: source object is likely at address zero src/clock.c: In function 'clock_setup': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(timer_counter, ticks % TICKS_PER_DAY); | ^~~~~~~ cc1: note: source object is likely at address zero In function 'handle_1a01', inlined from 'handle_1a' at src/clock.c:268:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:86:5: note: in expansion of macro 'SET_BDA' 86 | SET_BDA(timer_counter, ticks); | ^~~~~~~ In function 'handle_1a': cc1: note: source object is likely at address zero In function 'handle_1a01', inlined from 'handle_1a' at src/clock.c:268:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:87:5: note: in expansion of macro 'SET_BDA' 87 | SET_BDA(timer_rollover, 0); // reset flag | ^~~~~~~ In function 'handle_1a': cc1: note: source object is likely at address zero In function 'handle_1a00', inlined from 'handle_1a' at src/clock.c:267:16: src/clock.c:73:9: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 73 | u32 ticks = GET_BDA(timer_counter); | ^~~~~ In function 'handle_1a': cc1: note: source object is likely at address zero In function 'handle_1a00', inlined from 'handle_1a' at src/clock.c:267:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/clock.c:76:16: note: in expansion of macro 'GET_BDA' 76 | regs->al = GET_BDA(timer_rollover); | ^~~~~~~ In function 'handle_1a': cc1: note: source object is likely at address zero In function 'handle_1a00', inlined from 'handle_1a' at src/clock.c:267:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:77:5: note: in expansion of macro 'SET_BDA' 77 | SET_BDA(timer_rollover, 0); // reset flag | ^~~~~~~ In function 'handle_1a': cc1: note: source object is likely at address zero In function 'clock_update', inlined from 'handle_08' at src/clock.c:306:5: src/clock.c:284:9: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 284 | u32 counter = GET_BDA(timer_counter); | ^~~~~~~ In function 'handle_08': cc1: note: source object is likely at address zero In function 'clock_update', inlined from 'handle_08' at src/clock.c:306:5: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:38: note: in definition of macro 'SET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~ src/clock.c:290:9: note: in expansion of macro 'SET_BDA' 290 | SET_BDA(timer_rollover, GET_BDA(timer_rollover) + 1); | ^~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/clock.c:290:33: note: in expansion of macro 'GET_BDA' 290 | SET_BDA(timer_rollover, GET_BDA(timer_rollover) + 1); | ^~~~~~~ In function 'handle_08': cc1: note: source object is likely at address zero In function 'clock_update', inlined from 'handle_08' at src/clock.c:306:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:290:9: note: in expansion of macro 'SET_BDA' 290 | SET_BDA(timer_rollover, GET_BDA(timer_rollover) + 1); | ^~~~~~~ In function 'handle_08': cc1: note: source object is likely at address zero In function 'clock_update', inlined from 'handle_08' at src/clock.c:306:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:292:5: note: in expansion of macro 'SET_BDA' 292 | SET_BDA(timer_counter, counter); | ^~~~~~~ In function 'handle_08': cc1: note: source object is likely at address zero src/clock.c: In function 'irqtimer_calc_ticks': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/clock.c:341:13: note: in expansion of macro 'GET_BDA' 341 | return (GET_BDA(timer_counter) + count + 1) % TICKS_PER_DAY; | ^~~~~~~ cc1: note: source object is likely at address zero src/clock.c: In function 'irqtimer_calc': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/clock.c:349:16: note: in expansion of macro 'GET_BDA' 349 | return GET_BDA(timer_counter); | ^~~~~~~ cc1: note: source object is likely at address zero src/clock.c: In function 'irqtimer_check': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/clock.c:357:15: note: in expansion of macro 'GET_BDA' 357 | return (((GET_BDA(timer_counter) + TICKS_PER_DAY - end) % TICKS_PER_DAY) | ^~~~~~~ cc1: note: source object is likely at address zero In function 'set_usertimer', inlined from 'handle_1586' at src/clock.c:403:15: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/clock.c:369:9: note: in expansion of macro 'GET_BDA' 369 | if (GET_BDA(rtc_wait_flag) & RWS_WAIT_PENDING) | ^~~~~~~ In function 'handle_1586': cc1: note: source object is likely at address zero In function 'set_usertimer', inlined from 'handle_1586' at src/clock.c:403:15: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:373:5: note: in expansion of macro 'SET_BDA' 373 | SET_BDA(rtc_wait_flag, RWS_WAIT_PENDING); // Set status byte. | ^~~~~~~ In function 'handle_1586': cc1: note: source object is likely at address zero In function 'set_usertimer', inlined from 'handle_1586' at src/clock.c:403:15: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:374:5: note: in expansion of macro 'SET_BDA' 374 | SET_BDA(user_wait_complete_flag, SEGOFF(seg, offset)); | ^~~~~~~ In function 'handle_1586': cc1: note: source object is likely at address zero In function 'set_usertimer', inlined from 'handle_1586' at src/clock.c:403:15: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:374:5: note: in expansion of macro 'SET_BDA' 374 | SET_BDA(user_wait_complete_flag, SEGOFF(seg, offset)); | ^~~~~~~ In function 'handle_1586': cc1: note: source object is likely at address zero In function 'set_usertimer', inlined from 'handle_1586' at src/clock.c:403:15: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:375:5: note: in expansion of macro 'SET_BDA' 375 | SET_BDA(user_wait_timeout, usecs); | ^~~~~~~ In function 'handle_1586': cc1: note: source object is likely at address zero In function 'set_usertimer', inlined from 'handle_158300' at src/clock.c:417:15, inlined from 'handle_1583' at src/clock.c:448:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/clock.c:369:9: note: in expansion of macro 'GET_BDA' 369 | if (GET_BDA(rtc_wait_flag) & RWS_WAIT_PENDING) | ^~~~~~~ In function 'handle_1583': cc1: note: source object is likely at address zero In function 'set_usertimer', inlined from 'handle_158300' at src/clock.c:417:15, inlined from 'handle_1583' at src/clock.c:448:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:373:5: note: in expansion of macro 'SET_BDA' 373 | SET_BDA(rtc_wait_flag, RWS_WAIT_PENDING); // Set status byte. | ^~~~~~~ In function 'handle_1583': cc1: note: source object is likely at address zero In function 'set_usertimer', inlined from 'handle_158300' at src/clock.c:417:15, inlined from 'handle_1583' at src/clock.c:448:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:374:5: note: in expansion of macro 'SET_BDA' 374 | SET_BDA(user_wait_complete_flag, SEGOFF(seg, offset)); | ^~~~~~~ In function 'handle_1583': cc1: note: source object is likely at address zero In function 'set_usertimer', inlined from 'handle_158300' at src/clock.c:417:15, inlined from 'handle_1583' at src/clock.c:448:16: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:374:5: note: in expansion of macro 'SET_BDA' 374 | SET_BDA(user_wait_complete_flag, SEGOFF(seg, offset)); | ^~~~~~~ In function 'handle_1583': cc1: note: source object is likely at address zero In function 'set_usertimer', inlined from 'handle_158300' at src/clock.c:417:15, inlined from 'handle_1583' at src/clock.c:448:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:375:5: note: in expansion of macro 'SET_BDA' 375 | SET_BDA(user_wait_timeout, usecs); | ^~~~~~~ In function 'handle_1583': cc1: note: source object is likely at address zero src/clock.c: In function 'handle_70': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/clock.c:484:10: note: in expansion of macro 'GET_BDA' 484 | if (!GET_BDA(rtc_wait_flag)) | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/clock.c:488:16: note: in expansion of macro 'GET_BDA' 488 | u32 time = GET_BDA(user_wait_timeout); // Time left in microseconds. | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/clock.c:501:9: note: in expansion of macro 'SET_BDA' 501 | SET_BDA(user_wait_timeout, time); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/clock.c:491:34: note: in expansion of macro 'GET_BDA' 491 | struct segoff_s segoff = GET_BDA(user_wait_complete_flag); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/clock.c:491:34: note: in expansion of macro 'GET_BDA' 491 | struct segoff_s segoff = GET_BDA(user_wait_complete_flag); | ^~~~~~~ cc1: note: source object is likely at address zero Compile checking out/src/vgahooks.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/vgahooks.c -o out/src/vgahooks.o Compile checking out/src/apm.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/apm.c -o out/src/apm.o Compile checking out/src/sercon.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/sercon.c -o out/src/sercon.o In file included from src/biosvar.h:10, from src/sercon.c:7: In function 'cursor_pos_set', inlined from 'sercon_cursor_pos_set' at src/sercon.c:190:9: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/sercon.c:42:5: note: in expansion of macro 'SET_BDA' 42 | SET_BDA(cursor_pos[0], pos); | ^~~~~~~ In function 'sercon_cursor_pos_set': cc1: note: source object is likely at address zero In function 'cursor_pos_row', inlined from 'sercon_lazy_lf' at src/sercon.c:270:11: src/sercon.c:35:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 35 | u16 pos = GET_BDA(cursor_pos[0]); | ^~~ In function 'sercon_lazy_lf': cc1: note: source object is likely at address zero In function 'video_rows', inlined from 'sercon_lazy_lf' at src/sercon.c:271:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/sercon.c:19:12: note: in expansion of macro 'GET_BDA' 19 | return GET_BDA(video_rows)+1; | ^~~~~~~ In function 'sercon_lazy_lf': cc1: note: source object is likely at address zero In function 'cursor_pos_row', inlined from 'sercon_lazy_cursor_sync' at src/sercon.c:198:14, inlined from 'sercon_lazy_flush' at src/sercon.c:236:5: src/sercon.c:35:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 35 | u16 pos = GET_BDA(cursor_pos[0]); | ^~~ In function 'sercon_lazy_flush': cc1: note: source object is likely at address zero In function 'cursor_pos_row', inlined from 'sercon_lazy_putchar' at src/sercon.c:296:9: src/sercon.c:35:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 35 | u16 pos = GET_BDA(cursor_pos[0]); | ^~~ In function 'sercon_lazy_putchar': cc1: note: source object is likely at address zero In function 'cursor_pos_col', inlined from 'sercon_lazy_move_cursor' at src/sercon.c:285:11, inlined from 'sercon_lazy_putchar' at src/sercon.c:303:9: src/sercon.c:29:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 29 | u16 pos = GET_BDA(cursor_pos[0]); | ^~~ In function 'sercon_lazy_putchar': cc1: note: source object is likely at address zero In function 'video_cols', inlined from 'sercon_lazy_move_cursor' at src/sercon.c:286:16, inlined from 'sercon_lazy_putchar' at src/sercon.c:303:9: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/sercon.c:24:12: note: in expansion of macro 'GET_BDA' 24 | return GET_BDA(video_cols); | ^~~~~~~ In function 'sercon_lazy_putchar': cc1: note: source object is likely at address zero In function 'sercon_100f', inlined from 'handle_sercon' at src/sercon.c:505:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/sercon.c:456:16: note: in expansion of macro 'GET_BDA' 456 | regs->al = GET_BDA(video_mode); | ^~~~~~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'sercon_100f', inlined from 'handle_sercon' at src/sercon.c:505:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/sercon.c:457:16: note: in expansion of macro 'GET_BDA' 457 | regs->ah = GET_BDA(video_cols); | ^~~~~~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'cursor_pos_row', inlined from 'sercon_lazy_cr' at src/sercon.c:263:27, inlined from 'sercon_100e' at src/sercon.c:442:9, inlined from 'handle_sercon' at src/sercon.c:504:16: src/sercon.c:35:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 35 | u16 pos = GET_BDA(cursor_pos[0]); | ^~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'cursor_pos_col', inlined from 'sercon_lazy_backspace' at src/sercon.c:254:11, inlined from 'sercon_100e' at src/sercon.c:439:9, inlined from 'handle_sercon' at src/sercon.c:504:16: src/sercon.c:29:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 29 | u16 pos = GET_BDA(cursor_pos[0]); | ^~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'cursor_pos_row', inlined from 'sercon_lazy_backspace' at src/sercon.c:257:35, inlined from 'sercon_100e' at src/sercon.c:439:9, inlined from 'handle_sercon' at src/sercon.c:504:16: src/sercon.c:35:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 35 | u16 pos = GET_BDA(cursor_pos[0]); | ^~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'video_rows', inlined from 'sercon_1009' at src/sercon.c:411:16, inlined from 'handle_sercon' at src/sercon.c:503:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/sercon.c:19:12: note: in expansion of macro 'GET_BDA' 19 | return GET_BDA(video_rows)+1; | ^~~~~~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'video_cols', inlined from 'sercon_1009' at src/sercon.c:411:31, inlined from 'handle_sercon' at src/sercon.c:503:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/sercon.c:24:12: note: in expansion of macro 'GET_BDA' 24 | return GET_BDA(video_cols); | ^~~~~~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'cursor_pos_row', inlined from 'sercon_1009' at src/sercon.c:412:16, inlined from 'handle_sercon' at src/sercon.c:503:16: src/sercon.c:35:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 35 | u16 pos = GET_BDA(cursor_pos[0]); | ^~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'cursor_pos_col', inlined from 'sercon_1009' at src/sercon.c:427:33, inlined from 'handle_sercon' at src/sercon.c:503:16: src/sercon.c:29:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 29 | u16 pos = GET_BDA(cursor_pos[0]); | ^~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'video_rows', inlined from 'sercon_1006' at src/sercon.c:384:25, inlined from 'handle_sercon' at src/sercon.c:501:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/sercon.c:19:12: note: in expansion of macro 'GET_BDA' 19 | return GET_BDA(video_rows)+1; | ^~~~~~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'video_cols', inlined from 'sercon_1006' at src/sercon.c:385:25, inlined from 'handle_sercon' at src/sercon.c:501:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/sercon.c:24:12: note: in expansion of macro 'GET_BDA' 24 | return GET_BDA(video_cols); | ^~~~~~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'sercon_1003', inlined from 'handle_sercon' at src/sercon.c:500:16: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/sercon.c:371:16: note: in expansion of macro 'GET_BDA' 371 | regs->cx = GET_BDA(cursor_type); | ^~~~~~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'cursor_pos_row', inlined from 'sercon_1003' at src/sercon.c:372:16, inlined from 'handle_sercon' at src/sercon.c:500:16: src/sercon.c:35:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 35 | u16 pos = GET_BDA(cursor_pos[0]); | ^~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'cursor_pos_col', inlined from 'sercon_1003' at src/sercon.c:373:16, inlined from 'handle_sercon' at src/sercon.c:500:16: src/sercon.c:29:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 29 | u16 pos = GET_BDA(cursor_pos[0]); | ^~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'sercon_1001', inlined from 'handle_sercon' at src/sercon.c:498:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/sercon.c:359:5: note: in expansion of macro 'SET_BDA' 359 | SET_BDA(cursor_type, regs->cx); | ^~~~~~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'cursor_pos_set', inlined from 'sercon_1000' at src/sercon.c:335:9, inlined from 'handle_sercon' at src/sercon.c:497:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/sercon.c:42:5: note: in expansion of macro 'SET_BDA' 42 | SET_BDA(cursor_pos[0], pos); | ^~~~~~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'sercon_1000', inlined from 'handle_sercon' at src/sercon.c:497:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/sercon.c:336:9: note: in expansion of macro 'SET_BDA' 336 | SET_BDA(video_mode, mode); | ^~~~~~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'sercon_1000', inlined from 'handle_sercon' at src/sercon.c:497:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/sercon.c:337:9: note: in expansion of macro 'SET_BDA' 337 | SET_BDA(video_cols, cols); | ^~~~~~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'sercon_1000', inlined from 'handle_sercon' at src/sercon.c:497:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/sercon.c:338:9: note: in expansion of macro 'SET_BDA' 338 | SET_BDA(video_rows, rows-1); | ^~~~~~~ In function 'handle_sercon': cc1: note: source object is likely at address zero In function 'sercon_1000', inlined from 'handle_sercon' at src/sercon.c:497:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/sercon.c:339:9: note: in expansion of macro 'SET_BDA' 339 | SET_BDA(cursor_type, 0x0007); | ^~~~~~~ In function 'handle_sercon': cc1: note: source object is likely at address zero src/sercon.c: In function 'sercon_setup': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:20:5: note: in expansion of macro 'GET_FARVAR' 20 | GET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector]) | ^~~~~~~~~~ src/sercon.c:528:15: note: in expansion of macro 'GET_IVT' 528 | vgabios = GET_IVT(0x10); | ^~~~~~~ cc1: note: source object is likely at address zero src/sercon.c:528:13: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 528 | vgabios = GET_IVT(0x10); cc1: note: source object is likely at address zero src/sercon.c:528:13: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] cc1: note: source object is likely at address zero src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/sercon.c:541:5: note: in expansion of macro 'SET_IVT' 541 | SET_IVT(0x10, FUNC16(entry_sercon)); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/sercon.c:541:5: note: in expansion of macro 'SET_IVT' 541 | SET_IVT(0x10, FUNC16(entry_sercon)); | ^~~~~~~ cc1: note: source object is likely at address zero Compile checking out/src/cp437.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/cp437.c -o out/src/cp437.o Compile checking out/src/hw/dma.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/dma.c -o out/src/hw/dma.o Compile checking out/src/hw/rtc.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/rtc.c -o out/src/hw/rtc.o Compile checking out/src/hw/pci.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/pci.c -o out/src/hw/pci.o Compile checking out/src/hw/timer.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/timer.c -o out/src/hw/timer.o Compile checking out/src/hw/pic.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/pic.c -o out/src/hw/pic.o Compile checking out/src/hw/serialio.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/serialio.c -o out/src/hw/serialio.o Compile checking out/src/hw/usb.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/usb.c -o out/src/hw/usb.o Compile checking out/src/hw/ps2port.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/ps2port.c -o out/src/hw/ps2port.o Compile checking out/src/hw/usb-ohci.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/usb-ohci.c -o out/src/hw/usb-ohci.o Compile checking out/src/hw/usb-uhci.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/usb-uhci.c -o out/src/hw/usb-uhci.o Compile checking out/src/hw/usb-hid.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/usb-hid.c -o out/src/hw/usb-hid.o Compile checking out/src/hw/usb-msc.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/usb-msc.c -o out/src/hw/usb-msc.o Compile checking out/src/hw/usb-uas.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/usb-uas.c -o out/src/hw/usb-uas.o Compile checking out/src/hw/usb-ehci.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/usb-ehci.c -o out/src/hw/usb-ehci.o Compile checking out/src/hw/blockcmd.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/blockcmd.c -o out/src/hw/blockcmd.o Compile checking out/src/hw/ramdisk.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/ramdisk.c -o out/src/hw/ramdisk.o Compile checking out/src/hw/lsi-scsi.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/lsi-scsi.c -o out/src/hw/lsi-scsi.o Compile checking out/src/hw/esp-scsi.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/esp-scsi.c -o out/src/hw/esp-scsi.o Compile checking out/src/hw/ata.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/ata.c -o out/src/hw/ata.o In file included from src/biosvar.h:10, from src/hw/ata.c:9: src/hw/ata.c: In function 'ata_setup': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/hw/ata.c:1051:5: note: in expansion of macro 'SET_BDA' 1051 | SET_BDA(disk_control_byte, 0xc0); | ^~~~~~~ cc1: note: source object is likely at address zero Compile checking out/src/hw/floppy.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/floppy.c -o out/src/hw/floppy.o In file included from src/biosvar.h:10, from src/hw/floppy.c:8: src/hw/floppy.c: In function 'floppy_wait_irq': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/hw/floppy.c:226:14: note: in expansion of macro 'GET_BDA' 226 | u8 frs = GET_BDA(floppy_recalibration_status); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/hw/floppy.c:227:5: note: in expansion of macro 'SET_BDA' 227 | SET_BDA(floppy_recalibration_status, frs & ~FRS_IRQ); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/hw/floppy.c:235:15: note: in expansion of macro 'GET_BDA' 235 | frs = GET_BDA(floppy_recalibration_status); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/hw/floppy.c:243:5: note: in expansion of macro 'SET_BDA' 243 | SET_BDA(floppy_recalibration_status, frs & ~FRS_IRQ); | ^~~~~~~ cc1: note: source object is likely at address zero src/hw/floppy.c: In function 'floppy_drive_pio': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/hw/floppy.c:372:5: note: in expansion of macro 'SET_BDA' 372 | SET_BDA(floppy_motor_counter, 255); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/hw/floppy.c:387:5: note: in expansion of macro 'SET_BDA' 387 | SET_BDA(floppy_motor_counter, FLOPPY_MOTOR_TICKS); // reset motor timeout | ^~~~~~~ cc1: note: source object is likely at address zero src/hw/floppy.c: In function 'floppy_prep': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/hw/floppy.c:494:11: note: in expansion of macro 'GET_BDA' 494 | if (!(GET_BDA(floppy_recalibration_status) & (1<var, (val)) | ^~~~~~~~~~ src/hw/floppy.c:414:5: note: in expansion of macro 'SET_BDA' 414 | SET_BDA(floppy_recalibration_status, frs | (1<var, (val)) | ^~~~~~~~~~ src/hw/floppy.c:478:5: note: in expansion of macro 'SET_BDA' 478 | SET_BDA(floppy_last_data_rate, (old_data_rate<<2) | (data_rate<<6)); | ^~~~~~~ In function 'floppy_prep': cc1: note: source object is likely at address zero src/hw/floppy.c: In function 'floppy_setup': src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/hw/floppy.c:151:5: note: in expansion of macro 'SET_IVT' 151 | SET_IVT(0x1E, SEGOFF(SEG_BIOS | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/hw/floppy.c:151:5: note: in expansion of macro 'SET_IVT' 151 | SET_IVT(0x1E, SEGOFF(SEG_BIOS | ^~~~~~~ cc1: note: source object is likely at address zero In function 'floppy_reset', inlined from 'floppy_process_op' at src/hw/floppy.c:691:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/hw/floppy.c:594:5: note: in expansion of macro 'SET_BDA' 594 | SET_BDA(floppy_recalibration_status, 0); | ^~~~~~~ In function 'floppy_process_op': cc1: note: source object is likely at address zero In function 'floppy_reset', inlined from 'floppy_process_op' at src/hw/floppy.c:691:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/hw/floppy.c:595:5: note: in expansion of macro 'SET_BDA' 595 | SET_BDA(floppy_media_state[0], 0); | ^~~~~~~ In function 'floppy_process_op': cc1: note: source object is likely at address zero In function 'floppy_reset', inlined from 'floppy_process_op' at src/hw/floppy.c:691:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/hw/floppy.c:596:5: note: in expansion of macro 'SET_BDA' 596 | SET_BDA(floppy_media_state[1], 0); | ^~~~~~~ In function 'floppy_process_op': cc1: note: source object is likely at address zero In function 'floppy_reset', inlined from 'floppy_process_op' at src/hw/floppy.c:691:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/hw/floppy.c:597:5: note: in expansion of macro 'SET_BDA' 597 | SET_BDA(floppy_track[0], 0); | ^~~~~~~ In function 'floppy_process_op': cc1: note: source object is likely at address zero In function 'floppy_reset', inlined from 'floppy_process_op' at src/hw/floppy.c:691:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/hw/floppy.c:598:5: note: in expansion of macro 'SET_BDA' 598 | SET_BDA(floppy_track[1], 0); | ^~~~~~~ In function 'floppy_process_op': cc1: note: source object is likely at address zero In function 'floppy_reset', inlined from 'floppy_process_op' at src/hw/floppy.c:691:16: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/hw/floppy.c:599:5: note: in expansion of macro 'SET_BDA' 599 | SET_BDA(floppy_last_data_rate, 0); | ^~~~~~~ In function 'floppy_process_op': cc1: note: source object is likely at address zero src/hw/floppy.c: In function 'handle_0e': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/hw/floppy.c:719:14: note: in expansion of macro 'GET_BDA' 719 | u8 frs = GET_BDA(floppy_recalibration_status); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/hw/floppy.c:720:5: note: in expansion of macro 'SET_BDA' 720 | SET_BDA(floppy_recalibration_status, frs | FRS_IRQ); | ^~~~~~~ cc1: note: source object is likely at address zero src/hw/floppy.c: In function 'floppy_tick': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/hw/floppy.c:733:17: note: in expansion of macro 'GET_BDA' 733 | u8 fcount = GET_BDA(floppy_motor_counter); | ^~~~~~~ cc1: note: source object is likely at address zero src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/hw/floppy.c:736:9: note: in expansion of macro 'SET_BDA' 736 | SET_BDA(floppy_motor_counter, fcount); | ^~~~~~~ cc1: note: source object is likely at address zero Compile checking out/src/hw/mpt-scsi.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/mpt-scsi.c -o out/src/hw/mpt-scsi.o Compile checking out/src/hw/megasas.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/megasas.c -o out/src/hw/megasas.o Compile checking out/src/post.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/post.c -o out/src/post.o In file included from src/biosvar.h:10, from src/post.c:8: In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:49:5: note: in expansion of macro 'SET_IVT' 49 | SET_IVT(0x02, FUNC16(entry_02)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:49:5: note: in expansion of macro 'SET_IVT' 49 | SET_IVT(0x02, FUNC16(entry_02)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:50:5: note: in expansion of macro 'SET_IVT' 50 | SET_IVT(0x05, FUNC16(entry_05)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:50:5: note: in expansion of macro 'SET_IVT' 50 | SET_IVT(0x05, FUNC16(entry_05)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:51:5: note: in expansion of macro 'SET_IVT' 51 | SET_IVT(0x10, FUNC16(entry_10)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:51:5: note: in expansion of macro 'SET_IVT' 51 | SET_IVT(0x10, FUNC16(entry_10)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:52:5: note: in expansion of macro 'SET_IVT' 52 | SET_IVT(0x11, FUNC16(entry_11)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:52:5: note: in expansion of macro 'SET_IVT' 52 | SET_IVT(0x11, FUNC16(entry_11)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:53:5: note: in expansion of macro 'SET_IVT' 53 | SET_IVT(0x12, FUNC16(entry_12)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:53:5: note: in expansion of macro 'SET_IVT' 53 | SET_IVT(0x12, FUNC16(entry_12)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:54:5: note: in expansion of macro 'SET_IVT' 54 | SET_IVT(0x13, FUNC16(entry_13_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:54:5: note: in expansion of macro 'SET_IVT' 54 | SET_IVT(0x13, FUNC16(entry_13_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:55:5: note: in expansion of macro 'SET_IVT' 55 | SET_IVT(0x14, FUNC16(entry_14)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:55:5: note: in expansion of macro 'SET_IVT' 55 | SET_IVT(0x14, FUNC16(entry_14)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:56:5: note: in expansion of macro 'SET_IVT' 56 | SET_IVT(0x15, FUNC16(entry_15_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:56:5: note: in expansion of macro 'SET_IVT' 56 | SET_IVT(0x15, FUNC16(entry_15_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:57:5: note: in expansion of macro 'SET_IVT' 57 | SET_IVT(0x16, FUNC16(entry_16)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:57:5: note: in expansion of macro 'SET_IVT' 57 | SET_IVT(0x16, FUNC16(entry_16)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:58:5: note: in expansion of macro 'SET_IVT' 58 | SET_IVT(0x17, FUNC16(entry_17)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:58:5: note: in expansion of macro 'SET_IVT' 58 | SET_IVT(0x17, FUNC16(entry_17)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:59:5: note: in expansion of macro 'SET_IVT' 59 | SET_IVT(0x18, FUNC16(entry_18)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:59:5: note: in expansion of macro 'SET_IVT' 59 | SET_IVT(0x18, FUNC16(entry_18)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:60:5: note: in expansion of macro 'SET_IVT' 60 | SET_IVT(0x19, FUNC16(entry_19_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:60:5: note: in expansion of macro 'SET_IVT' 60 | SET_IVT(0x19, FUNC16(entry_19_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:61:5: note: in expansion of macro 'SET_IVT' 61 | SET_IVT(0x1a, FUNC16(entry_1a_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:61:5: note: in expansion of macro 'SET_IVT' 61 | SET_IVT(0x1a, FUNC16(entry_1a_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:62:5: note: in expansion of macro 'SET_IVT' 62 | SET_IVT(0x40, FUNC16(entry_40)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:62:5: note: in expansion of macro 'SET_IVT' 62 | SET_IVT(0x40, FUNC16(entry_40)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:70:5: note: in expansion of macro 'SET_IVT' 70 | SET_IVT(0x79, SEGOFF(0, 0)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at src/post.c:113:5: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/post.c:70:5: note: in expansion of macro 'SET_IVT' 70 | SET_IVT(0x79, SEGOFF(0, 0)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'bda_init', inlined from 'interface_init' at src/post.c:114:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/post.c:86:5: note: in expansion of macro 'SET_BDA' 86 | SET_BDA(ebda_seg, ebda_seg); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'bda_init', inlined from 'interface_init' at src/post.c:114:5: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ src/post.c:88:5: note: in expansion of macro 'SET_BDA' 88 | SET_BDA(mem_size_kb, ebda_seg / (1024/16)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'get_ebda_seg', inlined from 'get_ebda_ptr' at src/biosvar.h:66:12, inlined from 'bda_init' at src/post.c:91:46, inlined from 'interface_init' at src/post.c:114:5: src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/biosvar.h:60:12: note: in expansion of macro 'GET_BDA' 60 | return GET_BDA(ebda_seg); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero Compile checking out/src/x86.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/x86.c -o out/src/x86.o Compile checking out/src/e820map.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/e820map.c -o out/src/e820map.o Compile checking out/src/romfile.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/romfile.c -o out/src/romfile.o Compile checking out/src/font.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/font.c -o out/src/font.o Compile checking out/src/malloc.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/malloc.c -o out/src/malloc.o In file included from src/biosvar.h:10, from src/malloc.c:7: src/malloc.c: In function 'malloc_prepboot': src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ src/malloc.c:547:18: note: in expansion of macro 'GET_BDA' 547 | u32 endlow = GET_BDA(mem_size_kb)*1024; | ^~~~~~~ cc1: note: source object is likely at address zero Compile checking out/src/pmm.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/pmm.c -o out/src/pmm.o Compile checking out/src/bootsplash.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/bootsplash.c -o out/src/bootsplash.o Compile checking out/src/optionroms.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/optionroms.c -o out/src/optionroms.o In function 'boot_irq_captured', inlined from 'init_pcirom' at src/optionroms.c:344:28: src/optionroms.c:314:25: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 314 | return GET_IVT(0x19).segoff != FUNC16(entry_19_official).segoff; In function 'init_pcirom': cc1: note: source object is likely at address zero In function 'boot_irq_captured', inlined from 'init_pcirom' at src/optionroms.c:348:9: src/optionroms.c:314:25: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 314 | return GET_IVT(0x19).segoff != FUNC16(entry_19_official).segoff; In function 'init_pcirom': cc1: note: source object is likely at address zero In file included from src/optionroms.c:10: In function 'boot_irq_restore', inlined from 'init_pcirom' at src/optionroms.c:354:9: src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/optionroms.c:322:5: note: in expansion of macro 'SET_IVT' 322 | SET_IVT(0x19, seabios); | ^~~~~~~ In function 'init_pcirom': cc1: note: source object is likely at address zero In function 'boot_irq_restore', inlined from 'init_pcirom' at src/optionroms.c:354:9: src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ src/optionroms.c:322:5: note: in expansion of macro 'SET_IVT' 322 | SET_IVT(0x19, seabios); | ^~~~~~~ In function 'init_pcirom': cc1: note: source object is likely at address zero Compile checking out/src/bmp.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/bmp.c -o out/src/bmp.o Compile checking out/src/sha1.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/sha1.c -o out/src/sha1.o Compile checking out/src/boot.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/boot.c -o out/src/boot.o Compile checking out/src/hw/pcidevice.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/pcidevice.c -o out/src/hw/pcidevice.o Compile checking out/src/hw/pvscsi.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/pvscsi.c -o out/src/hw/pvscsi.o Compile checking out/src/jpeg.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/jpeg.c -o out/src/jpeg.o Compile checking out/src/hw/ahci.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/ahci.c -o out/src/hw/ahci.o Compile checking out/src/tcgbios.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/tcgbios.c -o out/src/tcgbios.o Compile checking out/src/hw/usb-hub.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/usb-hub.c -o out/src/hw/usb-hub.o Compile checking out/src/fw/coreboot.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/coreboot.c -o out/src/fw/coreboot.o Compile checking out/src/fw/multiboot.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/multiboot.c -o out/src/fw/multiboot.o Compile checking out/src/fw/csm.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/csm.c -o out/src/fw/csm.o Compile checking out/src/hw/usb-xhci.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/usb-xhci.c -o out/src/hw/usb-xhci.o Compile checking out/src/hw/sdcard.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/sdcard.c -o out/src/hw/sdcard.o Compile checking out/src/fw/lzmadecode.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/lzmadecode.c -o out/src/fw/lzmadecode.o Compile checking out/src/fw/biostables.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/biostables.c -o out/src/fw/biostables.o Compile checking out/src/fw/paravirt.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/paravirt.c -o out/src/fw/paravirt.o Compile checking out/src/fw/shadow.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/shadow.c -o out/src/fw/shadow.o Compile checking out/src/fw/smm.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/smm.c -o out/src/fw/smm.o Compile checking out/src/fw/smp.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/smp.c -o out/src/fw/smp.o Compile checking out/src/fw/mtrr.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/mtrr.c -o out/src/fw/mtrr.o Compile checking out/src/fw/xen.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/xen.c -o out/src/fw/xen.o Compile checking out/src/fw/pirtable.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/pirtable.c -o out/src/fw/pirtable.o Compile checking out/src/fw/mptable.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/mptable.c -o out/src/fw/mptable.o Compile checking out/src/fw/acpi.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/acpi.c -o out/src/fw/acpi.o Compile checking out/src/fw/pciinit.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/pciinit.c -o out/src/fw/pciinit.o Compile checking out/src/hw/virtio-ring.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/virtio-ring.c -o out/src/hw/virtio-ring.o Compile checking out/src/fw/smbios.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/smbios.c -o out/src/fw/smbios.o Compile checking out/src/fw/romfile_loader.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/romfile_loader.c -o out/src/fw/romfile_loader.o Compile checking out/src/hw/virtio-mmio.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/virtio-mmio.c -o out/src/hw/virtio-mmio.o Compile checking out/src/fw/dsdt_parser.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/fw/dsdt_parser.c -o out/src/fw/dsdt_parser.o Compile checking out/src/hw/virtio-blk.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/virtio-blk.c -o out/src/hw/virtio-blk.o Compile checking out/src/hw/virtio-scsi.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/virtio-scsi.c -o out/src/hw/virtio-scsi.o Compile checking out/src/hw/tpm_drivers.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/tpm_drivers.c -o out/src/hw/tpm_drivers.o Compile checking out/src/hw/virtio-pci.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/virtio-pci.c -o out/src/hw/virtio-pci.o Compile checking out/src/hw/nvme.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/hw/nvme.c -o out/src/hw/nvme.o Compile checking out/src/sha256.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/sha256.c -o out/src/sha256.o Generating offset file out/asm-offsets.h ./scripts/gen-offsets.sh out/src/asm-offsets.s out/asm-offsets.h Compiling (16bit) out/romlayout.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODESEGMENT=1 -fno-defer-pop -fno-jump-tables -fno-tree-switch-conversion -DMODE16=1 -m16 --param large-stack-frame=4 -c -D__ASSEMBLY__ src/romlayout.S -o out/romlayout.o Compile checking out/src/sha512.o cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/sha512.c -o out/src/sha512.o Compiling whole program out/code32seg.o printf '#include "src/string.c"\n #include "src/output.c"\n #include "src/pcibios.c"\n #include "src/apm.c"\n #include "src/stacks.c"\n #include "src/hw/pci.c"\n #include "src/hw/serialio.c"\n' > out/code32seg.o.tmp.c cc -I. -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODESEGMENT=1 -fno-defer-pop -fno-jump-tables -fno-tree-switch-conversion -DMODE16=0 -fwhole-program -DWHOLE_PROGRAM -c out/code32seg.o.tmp.c -o out/code32seg.o Compiling whole program out/ccode16.o printf '#include "src/misc.c"\n #include "src/stacks.c"\n #include "src/output.c"\n #include "src/string.c"\n #include "src/block.c"\n #include "src/cdrom.c"\n #include "src/disk.c"\n #include "src/mouse.c"\n #include "src/kbd.c"\n #include "src/system.c"\n #include "src/serial.c"\n #include "src/sercon.c"\n #include "src/clock.c"\n #include "src/resume.c"\n #include "src/pnpbios.c"\n #include "src/vgahooks.c"\n #include "src/pcibios.c"\n #include "src/apm.c"\n #include "src/cp437.c"\n #include "src/hw/pci.c"\n #include "src/hw/timer.c"\n #include "src/hw/rtc.c"\n #include "src/hw/dma.c"\n #include "src/hw/pic.c"\n #include "src/hw/ps2port.c"\n #include "src/hw/serialio.c"\n #include "src/hw/usb.c"\n #include "src/hw/usb-uhci.c"\n #include "src/hw/usb-ohci.c"\n #include "src/hw/usb-ehci.c"\n #include "src/hw/usb-hid.c"\n #include "src/hw/usb-msc.c"\n #include "src/hw/usb-uas.c"\n #include "src/hw/blockcmd.c"\n #include "src/hw/floppy.c"\n #include "src/hw/ata.c"\n #include "src/hw/ramdisk.c"\n #include "src/hw/lsi-scsi.c"\n #include "src/hw/esp-scsi.c"\n #include "src/hw/megasas.c"\n #include "src/hw/mpt-scsi.c"\n' > out/ccode16.o.tmp.c cc -I. -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODESEGMENT=1 -fno-defer-pop -fno-jump-tables -fno-tree-switch-conversion -DMODE16=1 -m16 --param large-stack-frame=4 -fwhole-program -DWHOLE_PROGRAM -c out/ccode16.o.tmp.c -o out/ccode16.o Compiling whole program out/ccode32flat.o printf '#include "src/misc.c"\n #include "src/stacks.c"\n #include "src/output.c"\n #include "src/string.c"\n #include "src/block.c"\n #include "src/cdrom.c"\n #include "src/disk.c"\n #include "src/mouse.c"\n #include "src/kbd.c"\n #include "src/system.c"\n #include "src/serial.c"\n #include "src/sercon.c"\n #include "src/clock.c"\n #include "src/resume.c"\n #include "src/pnpbios.c"\n #include "src/vgahooks.c"\n #include "src/pcibios.c"\n #include "src/apm.c"\n #include "src/cp437.c"\n #include "src/hw/pci.c"\n #include "src/hw/timer.c"\n #include "src/hw/rtc.c"\n #include "src/hw/dma.c"\n #include "src/hw/pic.c"\n #include "src/hw/ps2port.c"\n #include "src/hw/serialio.c"\n #include "src/hw/usb.c"\n #include "src/hw/usb-uhci.c"\n #include "src/hw/usb-ohci.c"\n #include "src/hw/usb-ehci.c"\n #include "src/hw/usb-hid.c"\n #include "src/hw/usb-msc.c"\n #include "src/hw/usb-uas.c"\n #include "src/hw/blockcmd.c"\n #include "src/hw/floppy.c"\n #include "src/hw/ata.c"\n #include "src/hw/ramdisk.c"\n #include "src/hw/lsi-scsi.c"\n #include "src/hw/esp-scsi.c"\n #include "src/hw/megasas.c"\n #include "src/hw/mpt-scsi.c"\n #include "src/post.c"\n #include "src/e820map.c"\n #include "src/malloc.c"\n #include "src/romfile.c"\n #include "src/x86.c"\n #include "src/optionroms.c"\n #include "src/pmm.c"\n #include "src/font.c"\n #include "src/boot.c"\n #include "src/bootsplash.c"\n #include "src/jpeg.c"\n #include "src/bmp.c"\n #include "src/tcgbios.c"\n #include "src/sha1.c"\n #include "src/hw/pcidevice.c"\n #include "src/hw/ahci.c"\n #include "src/hw/pvscsi.c"\n #include "src/hw/usb-xhci.c"\n #include "src/hw/usb-hub.c"\n #include "src/hw/sdcard.c"\n #include "src/fw/coreboot.c"\n #include "src/fw/lzmadecode.c"\n #include "src/fw/multiboot.c"\n #include "src/fw/csm.c"\n #include "src/fw/biostables.c"\n #include "src/fw/paravirt.c"\n #include "src/fw/shadow.c"\n #include "src/fw/pciinit.c"\n #include "src/fw/smm.c"\n #include "src/fw/smp.c"\n #include "src/fw/mtrr.c"\n #include "src/fw/xen.c"\n #include "src/fw/acpi.c"\n #include "src/fw/mptable.c"\n #include "src/fw/pirtable.c"\n #include "src/fw/smbios.c"\n #include "src/fw/romfile_loader.c"\n #include "src/fw/dsdt_parser.c"\n #include "src/hw/virtio-ring.c"\n #include "src/hw/virtio-pci.c"\n #include "src/hw/virtio-mmio.c"\n #include "src/hw/virtio-blk.c"\n #include "src/hw/virtio-scsi.c"\n #include "src/hw/tpm_drivers.c"\n #include "src/hw/nvme.c"\n #include "src/sha256.c"\n #include "src/sha512.c"\n' > out/ccode32flat.o.tmp.c cc -I. -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -fwhole-program -DWHOLE_PROGRAM -c out/ccode32flat.o.tmp.c -o out/ccode32flat.o In file included from ./src/biosvar.h:10, from ./src/misc.c:8, from out/ccode32flat.o.tmp.c:1: In function 'irqtimer_calc_ticks', inlined from 'irqtimer_calc' at ./src/clock.c:350:12, inlined from 'irqtimer_calc' at ./src/clock.c:346:1: ./src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ ./src/clock.c:341:13: note: in expansion of macro 'GET_BDA' 341 | return (GET_BDA(timer_counter) + count + 1) % TICKS_PER_DAY; | ^~~~~~~ In function 'irqtimer_calc': cc1: note: source object is likely at address zero ./src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ ./src/clock.c:349:16: note: in expansion of macro 'GET_BDA' 349 | return GET_BDA(timer_counter); | ^~~~~~~ cc1: note: source object is likely at address zero ./src/output.c: In function 'screenc': ./src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/biosvar.h:20:5: note: in expansion of macro 'GET_FARVAR' 20 | GET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector]) | ^~~~~~~~~~ ./src/output.c:77:25: note: in expansion of macro 'GET_IVT' 77 | if (!MODESEGMENT && GET_IVT(0x10).segoff == FUNC16(entry_10).segoff) | ^~~~~~~ cc1: note: source object is likely at address zero In function 'irqtimer_check', inlined from 'get_keystroke_full' at ./src/boot.c:661:13: ./src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ ./src/clock.c:357:15: note: in expansion of macro 'GET_BDA' 357 | return (((GET_BDA(timer_counter) + TICKS_PER_DAY - end) % TICKS_PER_DAY) | ^~~~~~~ In function 'get_keystroke_full': cc1: note: source object is likely at address zero In function 'irqtimer_check', inlined from 'boot_fail' at ./src/boot.c:974:41: ./src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ ./src/clock.c:357:15: note: in expansion of macro 'GET_BDA' 357 | return (((GET_BDA(timer_counter) + TICKS_PER_DAY - end) % TICKS_PER_DAY) | ^~~~~~~ In function 'boot_fail': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:49:5: note: in expansion of macro 'SET_IVT' 49 | SET_IVT(0x02, FUNC16(entry_02)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:49:5: note: in expansion of macro 'SET_IVT' 49 | SET_IVT(0x02, FUNC16(entry_02)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:50:5: note: in expansion of macro 'SET_IVT' 50 | SET_IVT(0x05, FUNC16(entry_05)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:50:5: note: in expansion of macro 'SET_IVT' 50 | SET_IVT(0x05, FUNC16(entry_05)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:51:5: note: in expansion of macro 'SET_IVT' 51 | SET_IVT(0x10, FUNC16(entry_10)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:51:5: note: in expansion of macro 'SET_IVT' 51 | SET_IVT(0x10, FUNC16(entry_10)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:52:5: note: in expansion of macro 'SET_IVT' 52 | SET_IVT(0x11, FUNC16(entry_11)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:52:5: note: in expansion of macro 'SET_IVT' 52 | SET_IVT(0x11, FUNC16(entry_11)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:53:5: note: in expansion of macro 'SET_IVT' 53 | SET_IVT(0x12, FUNC16(entry_12)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:53:5: note: in expansion of macro 'SET_IVT' 53 | SET_IVT(0x12, FUNC16(entry_12)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:54:5: note: in expansion of macro 'SET_IVT' 54 | SET_IVT(0x13, FUNC16(entry_13_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:54:5: note: in expansion of macro 'SET_IVT' 54 | SET_IVT(0x13, FUNC16(entry_13_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:55:5: note: in expansion of macro 'SET_IVT' 55 | SET_IVT(0x14, FUNC16(entry_14)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:55:5: note: in expansion of macro 'SET_IVT' 55 | SET_IVT(0x14, FUNC16(entry_14)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:56:5: note: in expansion of macro 'SET_IVT' 56 | SET_IVT(0x15, FUNC16(entry_15_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:56:5: note: in expansion of macro 'SET_IVT' 56 | SET_IVT(0x15, FUNC16(entry_15_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:57:5: note: in expansion of macro 'SET_IVT' 57 | SET_IVT(0x16, FUNC16(entry_16)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:57:5: note: in expansion of macro 'SET_IVT' 57 | SET_IVT(0x16, FUNC16(entry_16)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:58:5: note: in expansion of macro 'SET_IVT' 58 | SET_IVT(0x17, FUNC16(entry_17)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:58:5: note: in expansion of macro 'SET_IVT' 58 | SET_IVT(0x17, FUNC16(entry_17)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:59:5: note: in expansion of macro 'SET_IVT' 59 | SET_IVT(0x18, FUNC16(entry_18)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:59:5: note: in expansion of macro 'SET_IVT' 59 | SET_IVT(0x18, FUNC16(entry_18)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:60:5: note: in expansion of macro 'SET_IVT' 60 | SET_IVT(0x19, FUNC16(entry_19_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:60:5: note: in expansion of macro 'SET_IVT' 60 | SET_IVT(0x19, FUNC16(entry_19_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:61:5: note: in expansion of macro 'SET_IVT' 61 | SET_IVT(0x1a, FUNC16(entry_1a_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:61:5: note: in expansion of macro 'SET_IVT' 61 | SET_IVT(0x1a, FUNC16(entry_1a_official)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:62:5: note: in expansion of macro 'SET_IVT' 62 | SET_IVT(0x40, FUNC16(entry_40)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:62:5: note: in expansion of macro 'SET_IVT' 62 | SET_IVT(0x40, FUNC16(entry_40)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:70:5: note: in expansion of macro 'SET_IVT' 70 | SET_IVT(0x79, SEGOFF(0, 0)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'ivt_init', inlined from 'interface_init' at ./src/post.c:113:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/post.c:70:5: note: in expansion of macro 'SET_IVT' 70 | SET_IVT(0x79, SEGOFF(0, 0)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'bda_init', inlined from 'interface_init' at ./src/post.c:114:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/post.c:86:5: note: in expansion of macro 'SET_BDA' 86 | SET_BDA(ebda_seg, ebda_seg); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'bda_init', inlined from 'interface_init' at ./src/post.c:114:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/post.c:88:5: note: in expansion of macro 'SET_BDA' 88 | SET_BDA(mem_size_kb, ebda_seg / (1024/16)); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'get_ebda_seg', inlined from 'get_ebda_ptr' at ./src/biosvar.h:66:12, inlined from 'bda_init' at ./src/post.c:91:46, inlined from 'interface_init' at ./src/post.c:114:5: ./src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ ./src/biosvar.h:60:12: note: in expansion of macro 'GET_BDA' 60 | return GET_BDA(ebda_seg); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'kbd_init', inlined from 'interface_init' at ./src/post.c:121:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/kbd.c:23:5: note: in expansion of macro 'SET_BDA' 23 | SET_BDA(kbd_flag1, KF1_101KBD); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'kbd_init', inlined from 'interface_init' at ./src/post.c:121:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/kbd.c:24:5: note: in expansion of macro 'SET_BDA' 24 | SET_BDA(kbd_buf_head, x); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'kbd_init', inlined from 'interface_init' at ./src/post.c:121:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/kbd.c:25:5: note: in expansion of macro 'SET_BDA' 25 | SET_BDA(kbd_buf_tail, x); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'kbd_init', inlined from 'interface_init' at ./src/post.c:121:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/kbd.c:26:5: note: in expansion of macro 'SET_BDA' 26 | SET_BDA(kbd_buf_start_offset, x); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'kbd_init', inlined from 'interface_init' at ./src/post.c:121:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/kbd.c:28:5: note: in expansion of macro 'SET_BDA' 28 | SET_BDA(kbd_buf_end_offset | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'mouse_init' at ./src/mouse.c:23:5, inlined from 'interface_init' at ./src/post.c:122:5: ./src/biosvar.h:43:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 43 | u16 eqf = GET_BDA(equipment_list_flags); | ^~~ In function 'interface_init': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'mouse_init' at ./src/mouse.c:23:5, inlined from 'interface_init' at ./src/post.c:122:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/biosvar.h:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(equipment_list_flags, (eqf & ~clear) | set); | ^~~~~~~ In function 'interface_init': cc1: note: source object is likely at address zero In file included from out/ccode32flat.o.tmp.c:47: In function 'boot_irq_captured', inlined from 'init_pcirom' at ./src/optionroms.c:344:28: ./src/optionroms.c:314:25: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 314 | return GET_IVT(0x19).segoff != FUNC16(entry_19_official).segoff; In function 'init_pcirom': cc1: note: source object is likely at address zero In function 'boot_irq_captured', inlined from 'init_pcirom' at ./src/optionroms.c:348:9: ./src/optionroms.c:314:25: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 314 | return GET_IVT(0x19).segoff != FUNC16(entry_19_official).segoff; In function 'init_pcirom': cc1: note: source object is likely at address zero In function 'boot_irq_restore', inlined from 'init_pcirom' at ./src/optionroms.c:354:9: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/optionroms.c:322:5: note: in expansion of macro 'SET_IVT' 322 | SET_IVT(0x19, seabios); | ^~~~~~~ In function 'init_pcirom': cc1: note: source object is likely at address zero In function 'boot_irq_restore', inlined from 'init_pcirom' at ./src/optionroms.c:354:9: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/optionroms.c:322:5: note: in expansion of macro 'SET_IVT' 322 | SET_IVT(0x19, seabios); | ^~~~~~~ In function 'init_pcirom': cc1: note: source object is likely at address zero In function 'floppy_setup', inlined from 'block_setup' at ./src/block.c:510:5, inlined from 'device_hardware_setup' at ./src/post.c:131:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/hw/floppy.c:151:5: note: in expansion of macro 'SET_IVT' 151 | SET_IVT(0x1E, SEGOFF(SEG_BIOS | ^~~~~~~ In function 'device_hardware_setup': cc1: note: source object is likely at address zero In function 'floppy_setup', inlined from 'block_setup' at ./src/block.c:510:5, inlined from 'device_hardware_setup' at ./src/post.c:131:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/hw/floppy.c:151:5: note: in expansion of macro 'SET_IVT' 151 | SET_IVT(0x1E, SEGOFF(SEG_BIOS | ^~~~~~~ In function 'device_hardware_setup': cc1: note: source object is likely at address zero In function 'ata_setup', inlined from 'block_setup' at ./src/block.c:511:5, inlined from 'device_hardware_setup' at ./src/post.c:131:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/hw/ata.c:1051:5: note: in expansion of macro 'SET_BDA' 1051 | SET_BDA(disk_control_byte, 0xc0); | ^~~~~~~ In function 'device_hardware_setup': cc1: note: source object is likely at address zero In function 'detect_parport', inlined from 'lpt_setup' at ./src/serial.c:212:14, inlined from 'device_hardware_setup' at ./src/post.c:132:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/serial.c:199:5: note: in expansion of macro 'SET_BDA' 199 | SET_BDA(port_lpt[count], port); | ^~~~~~~ In function 'device_hardware_setup': cc1: note: source object is likely at address zero In function 'detect_parport', inlined from 'lpt_setup' at ./src/serial.c:212:14, inlined from 'device_hardware_setup' at ./src/post.c:132:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/serial.c:200:5: note: in expansion of macro 'SET_BDA' 200 | SET_BDA(lpt_timeout[count], timeout); | ^~~~~~~ In function 'device_hardware_setup': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'lpt_setup' at ./src/serial.c:217:5, inlined from 'device_hardware_setup' at ./src/post.c:132:5: ./src/biosvar.h:43:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 43 | u16 eqf = GET_BDA(equipment_list_flags); | ^~~ In function 'device_hardware_setup': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'lpt_setup' at ./src/serial.c:217:5, inlined from 'device_hardware_setup' at ./src/post.c:132:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/biosvar.h:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(equipment_list_flags, (eqf & ~clear) | set); | ^~~~~~~ In function 'device_hardware_setup': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'serial_setup' at ./src/serial.c:56:5, inlined from 'device_hardware_setup' at ./src/post.c:133:5: ./src/biosvar.h:43:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 43 | u16 eqf = GET_BDA(equipment_list_flags); | ^~~ In function 'device_hardware_setup': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'serial_setup' at ./src/serial.c:56:5, inlined from 'device_hardware_setup' at ./src/post.c:133:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/biosvar.h:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(equipment_list_flags, (eqf & ~clear) | set); | ^~~~~~~ In function 'device_hardware_setup': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'mathcp_setup' at ./src/misc.c:66:5, inlined from 'platform_hardware_setup' at ./src/post.c:146:5: ./src/biosvar.h:43:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 43 | u16 eqf = GET_BDA(equipment_list_flags); | ^~~ In function 'platform_hardware_setup': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'mathcp_setup' at ./src/misc.c:66:5, inlined from 'platform_hardware_setup' at ./src/post.c:146:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/biosvar.h:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(equipment_list_flags, (eqf & ~clear) | set); | ^~~~~~~ In function 'platform_hardware_setup': cc1: note: source object is likely at address zero In function 'clock_setup', inlined from 'platform_hardware_setup' at ./src/post.c:154:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/clock.c:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(timer_counter, ticks % TICKS_PER_DAY); | ^~~~~~~ In function 'platform_hardware_setup': cc1: note: source object is likely at address zero ./src/cdrom.c: In function 'cdrom_boot': ./src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/farptr.h:182:38: note: in definition of macro 'SET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~ ./src/cdrom.c:264:9: note: in expansion of macro 'SET_BDA' 264 | SET_BDA(hdcount, GET_BDA(hdcount) + 1); | ^~~~~~~ ./src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ ./src/cdrom.c:264:26: note: in expansion of macro 'GET_BDA' 264 | SET_BDA(hdcount, GET_BDA(hdcount) + 1); | ^~~~~~~ cc1: note: source object is likely at address zero ./src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/farptr.h:182:10: note: in expansion of macro 'GET_FARVAR' 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^~~~~~~~~~ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/cdrom.c:264:9: note: in expansion of macro 'SET_BDA' 264 | SET_BDA(hdcount, GET_BDA(hdcount) + 1); | ^~~~~~~ cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'cdrom_boot' at ./src/cdrom.c:242:9: ./src/biosvar.h:43:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 43 | u16 eqf = GET_BDA(equipment_list_flags); | ^~~ In function 'cdrom_boot': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'cdrom_boot' at ./src/cdrom.c:242:9: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/biosvar.h:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(equipment_list_flags, (eqf & ~clear) | set); | ^~~~~~~ In function 'cdrom_boot': cc1: note: source object is likely at address zero In file included from out/ccode32flat.o.tmp.c:12: In function 'sercon_setup', inlined from 'maininit' at ./src/post.c:211:5: ./src/sercon.c:528:13: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 528 | vgabios = GET_IVT(0x10); In function 'maininit': cc1: note: source object is likely at address zero In function 'sercon_setup', inlined from 'maininit' at ./src/post.c:211:5: ./src/sercon.c:528:13: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] In function 'maininit': cc1: note: source object is likely at address zero In function 'sercon_setup', inlined from 'maininit' at ./src/post.c:211:5: ./src/sercon.c:528:13: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] In function 'maininit': cc1: note: source object is likely at address zero In function 'sercon_setup', inlined from 'maininit' at ./src/post.c:211:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/sercon.c:541:5: note: in expansion of macro 'SET_IVT' 541 | SET_IVT(0x10, FUNC16(entry_sercon)); | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'sercon_setup', inlined from 'maininit' at ./src/post.c:211:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/sercon.c:541:5: note: in expansion of macro 'SET_IVT' 541 | SET_IVT(0x10, FUNC16(entry_sercon)); | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'irqtimer_check', inlined from 'interactive_bootmenu' at ./src/boot.c:755:37, inlined from 'maininit' at ./src/post.c:224:5: ./src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u32[0]' {aka 'unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ ./src/clock.c:357:15: note: in expansion of macro 'GET_BDA' 357 | return (((GET_BDA(timer_counter) + TICKS_PER_DAY - end) % TICKS_PER_DAY) | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'malloc_prepboot', inlined from 'prepareboot' at ./src/post.c:172:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ ./src/malloc.c:547:18: note: in expansion of macro 'GET_BDA' 547 | u32 endlow = GET_BDA(mem_size_kb)*1024; | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In file included from out/ccode32flat.o.tmp.c:5: In function 'map_hd_drive', inlined from 'bcv_prepboot' at ./src/boot.c:840:13, inlined from 'prepareboot' at ./src/post.c:167:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/block.c:261:19: warning: array subscript 0 is outside array bounds of 'struct bios_data_area_s[0]' [-Warray-bounds=] 261 | int hdid = bda->hdcount; | ~~~^~~~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'get_ebda_seg', inlined from 'get_ebda_ptr' at ./src/biosvar.h:66:12, inlined from 'fill_fdpt' at ./src/block.c:213:28, inlined from 'map_hd_drive' at ./src/block.c:269:5, inlined from 'bcv_prepboot' at ./src/boot.c:840:13, inlined from 'prepareboot' at ./src/post.c:167:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ ./src/biosvar.h:60:12: note: in expansion of macro 'GET_BDA' 60 | return GET_BDA(ebda_seg); | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'get_ebda_seg', inlined from 'fill_fdpt' at ./src/block.c:239:9, inlined from 'map_hd_drive' at ./src/block.c:269:5, inlined from 'bcv_prepboot' at ./src/boot.c:840:13, inlined from 'prepareboot' at ./src/post.c:167:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ ./src/biosvar.h:60:12: note: in expansion of macro 'GET_BDA' 60 | return GET_BDA(ebda_seg); | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'fill_fdpt', inlined from 'map_hd_drive' at ./src/block.c:269:5, inlined from 'bcv_prepboot' at ./src/boot.c:840:13, inlined from 'prepareboot' at ./src/post.c:167:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/block.c:239:9: note: in expansion of macro 'SET_IVT' 239 | SET_IVT(0x46, SEGOFF(get_ebda_seg(), offsetof( | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'fill_fdpt', inlined from 'map_hd_drive' at ./src/block.c:269:5, inlined from 'bcv_prepboot' at ./src/boot.c:840:13, inlined from 'prepareboot' at ./src/post.c:167:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/block.c:239:9: note: in expansion of macro 'SET_IVT' 239 | SET_IVT(0x46, SEGOFF(get_ebda_seg(), offsetof( | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'get_ebda_seg', inlined from 'fill_fdpt' at ./src/block.c:236:9, inlined from 'map_hd_drive' at ./src/block.c:269:5, inlined from 'bcv_prepboot' at ./src/boot.c:840:13, inlined from 'prepareboot' at ./src/post.c:167:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/farptr.h:180:6: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 180 | (*((typeof(&(var)))MAKE_FLATPTR((seg), &(var)))) | ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./src/biosvar.h:37:5: note: in expansion of macro 'GET_FARVAR' 37 | GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) | ^~~~~~~~~~ ./src/biosvar.h:60:12: note: in expansion of macro 'GET_BDA' 60 | return GET_BDA(ebda_seg); | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'fill_fdpt', inlined from 'map_hd_drive' at ./src/block.c:269:5, inlined from 'bcv_prepboot' at ./src/boot.c:840:13, inlined from 'prepareboot' at ./src/post.c:167:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/block.c:236:9: note: in expansion of macro 'SET_IVT' 236 | SET_IVT(0x41, SEGOFF(get_ebda_seg(), offsetof( | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'fill_fdpt', inlined from 'map_hd_drive' at ./src/block.c:269:5, inlined from 'bcv_prepboot' at ./src/boot.c:840:13, inlined from 'prepareboot' at ./src/post.c:167:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/farptr.h:182:35: warning: array subscript 1 is outside array bounds of 'struct segoff_s[0]' [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:22:5: note: in expansion of macro 'SET_FARVAR' 22 | SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff) | ^~~~~~~~~~ ./src/block.c:236:9: note: in expansion of macro 'SET_IVT' 236 | SET_IVT(0x41, SEGOFF(get_ebda_seg(), offsetof( | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'map_floppy_drive' at ./src/block.c:296:9, inlined from 'bcv_prepboot' at ./src/boot.c:836:13, inlined from 'prepareboot' at ./src/post.c:167:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/biosvar.h:43:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 43 | u16 eqf = GET_BDA(equipment_list_flags); | ^~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'map_floppy_drive' at ./src/block.c:296:9, inlined from 'bcv_prepboot' at ./src/boot.c:836:13, inlined from 'prepareboot' at ./src/post.c:167:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/biosvar.h:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(equipment_list_flags, (eqf & ~clear) | set); | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'map_floppy_drive', inlined from 'bcv_prepboot' at ./src/boot.c:836:13, inlined from 'prepareboot' at ./src/post.c:167:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/block.c:297:9: note: in expansion of macro 'SET_BDA' 297 | SET_BDA(floppy_harddisk_info, 0x77); | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'map_floppy_drive' at ./src/block.c:292:9, inlined from 'bcv_prepboot' at ./src/boot.c:836:13, inlined from 'prepareboot' at ./src/post.c:167:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/biosvar.h:43:9: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 43 | u16 eqf = GET_BDA(equipment_list_flags); | ^~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'set_equipment_flags', inlined from 'map_floppy_drive' at ./src/block.c:292:9, inlined from 'bcv_prepboot' at ./src/boot.c:836:13, inlined from 'prepareboot' at ./src/post.c:167:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u16[0]' {aka 'short unsigned int[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/biosvar.h:44:5: note: in expansion of macro 'SET_BDA' 44 | SET_BDA(equipment_list_flags, (eqf & ~clear) | set); | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero In function 'map_floppy_drive', inlined from 'bcv_prepboot' at ./src/boot.c:836:13, inlined from 'prepareboot' at ./src/post.c:167:5, inlined from 'maininit' at ./src/post.c:228:5: ./src/farptr.h:182:35: warning: array subscript 0 is outside array bounds of 'u8[0]' {aka 'unsigned char[]'} [-Warray-bounds=] 182 | do { GET_FARVAR((seg), (var)) = (val); } while (0) | ^ ./src/biosvar.h:39:5: note: in expansion of macro 'SET_FARVAR' 39 | SET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var, (val)) | ^~~~~~~~~~ ./src/block.c:293:9: note: in expansion of macro 'SET_BDA' 293 | SET_BDA(floppy_harddisk_info, 0x07); | ^~~~~~~ In function 'maininit': cc1: note: source object is likely at address zero Building ld scripts /usr/bin/python3 ./scripts/buildversion.py -e "" -t "cc;as;ld;objcopy;objdump;strip" out/autoversion.h Version: 1.16.2-20230720_185251-tld-x86 cc -Iout/ -Isrc -Os -MD -g -Wall -Wno-strict-aliasing -Wold-style-definition -Wtype-limits -m32 -march=i386 -mregparm=3 -mpreferred-stack-boundary=2 -minline-all-stringops -fomit-frame-pointer -freg-struct-return -ffreestanding -fno-delete-null-pointer-checks -ffunction-sections -fdata-sections -fno-common -fno-merge-constants -fno-pie -fno-stack-protector -fstack-check=no -Wno-address-of-packed-member -fcf-protection=none -DMODE16=0 -DMODESEGMENT=0 -c src/version.c -o out/version.o ld -melf_i386 -r out/ccode32flat.o out/version.o -o out/code32flat.o ld -melf_i386 -r out/ccode16.o out/romlayout.o -o out/code16.o ld: warning: out/romlayout.o: missing .note.GNU-stack section implies executable stack ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker objdump -thr out/code32flat.o > out/code32flat.o.objdump objdump -thr out/code32seg.o > out/code32seg.o.objdump objdump -thr out/code16.o > out/code16.o.objdump /usr/bin/python3 ./scripts/layoutrom.py out/code16.o.objdump out/code32seg.o.objdump out/code32flat.o.objdump out/autoconf.h out/romlayout16.lds out/romlayout32seg.lds out/romlayout32flat.lds Fixed space: 0xe05b-0x10000 total: 8101 slack: 15 Percent slack: 0.2% 16bit size: 38016 32bit segmented size: 2277 32bit flat size: 50699 32bit flat init size: 84352 Lowmem size: 2240 f-segment var size: 1232 Linking out/rom32seg.o ld -T out/romlayout32seg.lds out/code32seg.o -o out/rom32seg.o Linking out/rom16.o ld -T out/romlayout16.lds out/code16.o -o out/rom16.o ld: warning: out/code16.o: requires executable stack (because the .note.GNU-stack section is executable) ld: warning: out/rom16.o has a LOAD segment with RWX permissions Stripping out/rom16.noexec.o strip out/rom16.o -o out/rom16.o.strip.o /usr/bin/python3 ./scripts/ldnoexec.py out/rom16.o.strip.o out/rom16.noexec.o Stripping out/rom32seg.noexec.o strip out/rom32seg.o -o out/rom32seg.o.strip.o /usr/bin/python3 ./scripts/ldnoexec.py out/rom32seg.o.strip.o out/rom32seg.noexec.o Linking out/rom.o ld -N -T out/romlayout32flat.lds out/rom16.noexec.o out/rom32seg.noexec.o out/code32flat.o -o out/rom.o ld: warning: out/rom32seg.noexec.o: missing .note.GNU-stack section implies executable stack ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker ld: warning: out/rom.o has a LOAD segment with RWX permissions Prepping out/bios.bin.prep rm -f out/bios.bin out/Csm16.bin out/bios.bin.elf objdump -thr out/rom.o > out/rom.o.objdump objcopy -O binary out/rom.o out/bios.bin.raw /usr/bin/python3 ./scripts/checkrom.py out/rom.o.objdump 0 out/bios.bin.raw out/bios.bin.prep Total size: 185184 Fixed: 92224 Free: 76960 (used 70.6% of 256KiB rom) Creating out/bios.bin cp out/bios.bin.prep out/bios.bin + RPM_EC=0 + jobs -p + exit 0 Executing(%install): /bin/sh -e /tmp/B.mbqtj2yn/BUILD/tmp/rpm-tmp.WDVemS TMP=/home/users/builder/tmp HOME=/home/users/builder PATH=/bin:/usr/bin:/usr/X11R6/bin:/usr/local/bin:/home/users/builder/bin TMPDIR=/tmp/B.mbqtj2yn/BUILD/tmp + umask 022 + cd /tmp/B.mbqtj2yn/BUILD + /bin/rm '--interactive=never' -rf /tmp/B.mbqtj2yn/BUILD/tmp/seabios-1.16.2-i686-root-builder + /bin/mkdir -p /tmp/B.mbqtj2yn/BUILD/tmp/seabios-1.16.2-i686-root-builder + cd seabios-1.16.2 + rm -rf /tmp/B.mbqtj2yn/BUILD/tmp/seabios-1.16.2-i686-root-builder + install -d /tmp/B.mbqtj2yn/BUILD/tmp/seabios-1.16.2-i686-root-builder/usr/share/seabios + install out/bios.bin /tmp/B.mbqtj2yn/BUILD/tmp/seabios-1.16.2-i686-root-builder/usr/share/seabios/bios.bin + __spec_install_post_strip + set +x + __spec_install_post_chrpath + set +x + __spec_install_post_compress_modules + set +x + __spec_install_post_check_so + set +x Searching for shared objects with unresolved symbols... DONE + __spec_install_post_check_shebangs + set +x Checking script shebangs... DONE + __spec_install_post_compress_docs + set +x + __spec_install_post_py_hardlink + set +x Processing files: seabios-1.16.2-1.i686 Executing(%doc): /bin/sh -e /tmp/B.mbqtj2yn/BUILD/tmp/rpm-tmp.2seq5X + umask 022 + cd /tmp/B.mbqtj2yn/BUILD + cd seabios-1.16.2 + DOCDIR=/tmp/B.mbqtj2yn/BUILD/tmp/seabios-1.16.2-i686-root-builder/usr/share/doc/seabios-1.16.2 + export 'LC_ALL=C' + export DOCDIR + test -d /tmp/B.mbqtj2yn/BUILD/tmp/seabios-1.16.2-i686-root-builder/usr/share/doc/seabios-1.16.2 + /bin/mkdir -p /tmp/B.mbqtj2yn/BUILD/tmp/seabios-1.16.2-i686-root-builder/usr/share/doc/seabios-1.16.2 + cp -pr README -pr docs/Debugging.md docs/Mailinglist.md docs/Memory_Model.md docs/Releases.md docs/Runtime_config.md docs/SeaBIOS.md docs/SeaVGABIOS.md /tmp/B.mbqtj2yn/BUILD/tmp/seabios-1.16.2-i686-root-builder/usr/share/doc/seabios-1.16.2 + RPM_EC=0 + jobs -p + exit 0 Provides: seabios = 1.16.2-1 seabios(x86-32) = 1.16.2-1 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Checking for unpackaged file(s): /usr/lib/rpm/check-files /tmp/B.mbqtj2yn/BUILD/tmp/seabios-1.16.2-i686-root-builder Wrote: /tmp/B.mbqtj2yn/RPMS/seabios-1.16.2-1.i686.rpm Executing(%clean): /bin/sh -e /tmp/B.mbqtj2yn/BUILD/tmp/rpm-tmp.HtLCBI + umask 022 + cd /tmp/B.mbqtj2yn/BUILD + cd seabios-1.16.2 + rm -rf /tmp/B.mbqtj2yn/BUILD/tmp/seabios-1.16.2-i686-root-builder + RPM_EC=0 + jobs -p + exit 0 RPM build warnings: Could not canonicalize hostname: tld-x86 ended at: Thu Jul 20 18:52:51 2023, done in 0:00:10.184297 + chmod -R u+rwX /tmp/B.mbqtj2yn/BUILD + rm -rf /tmp/B.mbqtj2yn/tmp /tmp/B.mbqtj2yn/BUILD copy rpm files to cache_dir: /spools/ready Creating pndir index of /spools/ready/ (type=dir)... Loading [pndir]previous /spools/ready/packages.ndir.gz... Loading [dir]/spools/ready/... 200..400..600..800..912 Writing /spools/ready/packages.ndir.gz... Begin-TLD-Builder-Info upgrading packages End-TLD-Builder-Info + rm -rf /tmp/B.mbqtj2yn Begin-TLD-Builder-Info Build-Time: user:20.24s sys:1.66s real:15.45s (faults io:19 non-io:495683) Files queued for ftp: 118673 seabios-1.16.2-1.i686.rpm 76 seabios-1.16.2-1.src.rpm.uploadinfo End-TLD-Builder-Info