=>> Building emulators/openmsx build started at Tue Jan 20 07:13:23 EST 2026 port directory: /usr/ports/emulators/openmsx package name: openmsx-20.0_1 building for: FreeBSD pkg.DaveG.ca 14.3-RELEASE-p7 FreeBSD 14.3-RELEASE-p7 1403000 amd64 maintained by: dmenelkir@gmail.com Makefile datestamp: -rw-r--r-- 1 root wheel 935 Jan 5 20:59 /usr/ports/emulators/openmsx/Makefile Ports top last git commit: 076a295eb33c Ports top unclean checkout: no Port dir last git commit: e14a177aa36a Port dir unclean checkout: no Poudriere version: poudriere-git-3.4.2 Host OSVERSION: 1500068 Jail OSVERSION: 1403000 Job Id: 05 ---Begin Environment--- SHELL=/bin/sh OSVERSION=1403000 UNAME_v=FreeBSD 14.3-RELEASE-p7 1403000 UNAME_r=14.3-RELEASE-p7 BLOCKSIZE=K MAIL=/var/mail/root MM_CHARSET=UTF-8 LANG=C.UTF-8 STATUS=1 HOME=/root PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin MAKE_OBJDIR_CHECK_WRITABLE=0 LOCALBASE=/usr/local USER=root POUDRIERE_NAME=poudriere-git LIBEXECPREFIX=/usr/local/libexec/poudriere POUDRIERE_VERSION=3.4.2 MASTERMNT=/usr/local/poudriere/data/.m/freebsd_14_3_x64-HEAD-ALL/ref LC_COLLATE=C POUDRIERE_BUILD_TYPE=bulk PACKAGE_BUILDING=yes SAVED_TERM=tmux-256color OUTPUT_REDIRECTED_STDERR=4 OUTPUT_REDIRECTED=1 PWD=/usr/local/poudriere/data/.m/freebsd_14_3_x64-HEAD-ALL/05/.p OUTPUT_REDIRECTED_STDOUT=3 P_PORTS_FEATURES=FLAVORS SUBPACKAGES SELECTED_OPTIONS MASTERNAME=freebsd_14_3_x64-HEAD-ALL SCRIPTPREFIX=/usr/local/share/poudriere SCRIPTNAME=bulk.sh OLDPWD=/usr/local/poudriere/data/.m/freebsd_14_3_x64-HEAD-ALL/ref/.p/pool POUDRIERE_PKGNAME=poudriere-git-3.4.2 SCRIPTPATH=/usr/local/share/poudriere/bulk.sh POUDRIEREPATH=/usr/local/bin/poudriere ---End Environment--- ---Begin Poudriere Port Flags/Env--- PORT_FLAGS= PKGENV= FLAVOR= MAKE_ARGS= ---End Poudriere Port Flags/Env--- ---Begin OPTIONS List--- ===> The following configuration options are available for openmsx-20.0_1: DOCS=on: Build and/or install documentation ===> Use 'make config' to modify these settings ---End OPTIONS List--- --MAINTAINER-- dmenelkir@gmail.com --End MAINTAINER-- --CONFIGURE_ARGS-- --End CONFIGURE_ARGS-- --CONFIGURE_ENV-- MAKE=/usr/local/bin/gmake PKG_CONFIG=pkgconf PYTHON="/usr/local/bin/python3.11" SDL2_CONFIG=/usr/local/bin/sdl2-config XDG_DATA_HOME=/wrkdirs/usr/ports/emulators/openmsx/work XDG_CONFIG_HOME=/wrkdirs/usr/ports/emulators/openmsx/work XDG_CACHE_HOME=/wrkdirs/usr/ports/emulators/openmsx/work/.cache HOME=/wrkdirs/usr/ports/emulators/openmsx/work TMPDIR="/tmp" PATH=/wrkdirs/usr/ports/emulators/openmsx/work/.bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin PKG_CONFIG_LIBDIR=/wrkdirs/usr/ports/emulators/openmsx/work/.pkgconfig:/usr/local/libdata/pkgconfig:/usr/local/share/pkgconfig:/usr/libdata/pkgconfig SHELL=/bin/sh CONFIG_SHELL=/bin/sh --End CONFIGURE_ENV-- --MAKE_ENV-- SDL2_CONFIG=/usr/local/bin/sdl2-config XDG_DATA_HOME=/wrkdirs/usr/ports/emulators/openmsx/work XDG_CONFIG_HOME=/wrkdirs/usr/ports/emulators/openmsx/work XDG_CACHE_HOME=/wrkdirs/usr/ports/emulators/openmsx/work/.cache HOME=/wrkdirs/usr/ports/emulators/openmsx/work TMPDIR="/tmp" PATH=/wrkdirs/usr/ports/emulators/openmsx/work/.bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin PKG_CONFIG_LIBDIR=/wrkdirs/usr/ports/emulators/openmsx/work/.pkgconfig:/usr/local/libdata/pkgconfig:/usr/local/share/pkgconfig:/usr/libdata/pkgconfig MK_DEBUG_FILES=no MK_KERNEL_SYMBOLS=no SHELL=/bin/sh NO_LINT=YES PREFIX=/usr/local LOCALBASE=/usr/local CC="cc" CFLAGS="-O2 -pipe -fstack-protector-strong -fno-strict-aliasing " CPP="cpp" CPPFLAGS="" LDFLAGS=" " LIBS="" CXX="c++" CXXFLAGS="-O2 -pipe -fstack-protector-strong -fno-strict-aliasing -I/usr/include/c++/v1 -std=c++20 " BSD_INSTALL_PROGRAM="install -s -m 555" BSD_INSTALL_LIB="install -s -m 0644" BSD_INSTALL_SCRIPT="install -m 555" BSD_INSTALL_DATA="install -m 0644" BSD_INSTALL_MAN="install -m 444" --End MAKE_ENV-- --PLIST_SUB-- PORTDOCS="" PYTHON_INCLUDEDIR=include/python3.11 PYTHON_LIBDIR=lib/python3.11 PYTHON_PLATFORM=freebsd14 PYTHON_SITELIBDIR=lib/python3.11/site-packages PYTHON_SUFFIX=311 PYTHON_BASESUFFIX=311 PYTHON_TAG=.cpython-311 PYTHON_SOABI=.cpython-311 PYTHON_VER=3.11 PYTHON_BASEVER=3.11 PYTHON_VERSION=python3.11 PYTHON2="@comment " PYTHON3="" OSREL=14.3 PREFIX=%D LOCALBASE=/usr/local RESETPREFIX=/usr/local LIB32DIR=lib DOCSDIR="share/doc/openmsx" EXAMPLESDIR="share/examples/openmsx" DATADIR="share/openmsx" WWWDIR="www/openmsx" ETCDIR="etc/openmsx" --End PLIST_SUB-- --SUB_LIST-- PYTHON_INCLUDEDIR=/usr/local/include/python3.11 PYTHON_LIBDIR=/usr/local/lib/python3.11 PYTHON_PLATFORM=freebsd14 PYTHON_SITELIBDIR=/usr/local/lib/python3.11/site-packages PYTHON_SUFFIX=311 PYTHON_BASESUFFIX=311 PYTHON_TAG=.cpython-311 PYTHON_SOABI=.cpython-311 PYTHON_VER=3.11 PYTHON_BASEVER=3.11 PYTHON_VERSION=python3.11 PYTHON2="@comment " PYTHON3="" PREFIX=/usr/local LOCALBASE=/usr/local DATADIR=/usr/local/share/openmsx DOCSDIR=/usr/local/share/doc/openmsx EXAMPLESDIR=/usr/local/share/examples/openmsx WWWDIR=/usr/local/www/openmsx ETCDIR=/usr/local/etc/openmsx --End SUB_LIST-- ---Begin make.conf--- DEFAULT_VERSIONS+=pgsql=15 DEFAULT_VERSIONS+=php=82 DISABLE_LICENSES=yes SELECTED_OPTIONS+=OPENBLAS ARCHDEF=AMD64K10h64SSE3 USE_PACKAGE_DEPENDS=yes BATCH=yes WRKDIRPREFIX=/wrkdirs PORTSDIR=/usr/ports PACKAGES=/packages DISTDIR=/distfiles FORCE_PACKAGE=yes PACKAGE_BUILDING=yes PACKAGE_BUILDING_FLAVORS=yes #### #### DEFAULT_VERSIONS+=pgsql=15 DEFAULT_VERSIONS+=php=82 DISABLE_LICENSES=yes SELECTED_OPTIONS+=OPENBLAS ARCHDEF=AMD64K10h64SSE3 WITH_CCACHE_BUILD=yes CCACHE_DIR=/root/.ccache #### Misc Poudriere #### .include "/etc/make.conf.ports_env" GID=0 UID=0 ---End make.conf--- --Resource limits-- cpu time (seconds, -t) unlimited file size (512-blocks, -f) unlimited data seg size (kbytes, -d) 33554432 stack size (kbytes, -s) 524288 core file size (512-blocks, -c) unlimited max memory size (kbytes, -m) unlimited locked memory (kbytes, -l) unlimited max user processes (-u) 89999 open files (-n) 8192 virtual mem size (kbytes, -v) unlimited swap limit (kbytes, -w) unlimited socket buffer size (bytes, -b) unlimited pseudo-terminals (-p) unlimited kqueues (-k) unlimited umtx shared locks (-o) unlimited pipebuf (-y) unlimited --End resource limits-- =================================================== ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 =========================================================================== =================================================== ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 ===> openmsx-20.0_1 depends on file: /usr/local/sbin/pkg - not found ===> Installing existing package /packages/All/pkg-2.5.1.pkg [pkg.DaveG.ca] Installing pkg-2.5.1... [pkg.DaveG.ca] Extracting pkg-2.5.1: .......... done ===> openmsx-20.0_1 depends on file: /usr/local/sbin/pkg - found ===> Returning to build of openmsx-20.0_1 =========================================================================== =================================================== ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 =========================================================================== =================================================== ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> Fetching all distfiles required by openmsx-20.0_1 for building =========================================================================== =================================================== ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> Fetching all distfiles required by openmsx-20.0_1 for building => SHA256 Checksum OK for openmsx-20.0.tar.gz. =========================================================================== =================================================== ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 =========================================================================== =================================================== ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> Fetching all distfiles required by openmsx-20.0_1 for building ===> Extracting for openmsx-20.0_1 => SHA256 Checksum OK for openmsx-20.0.tar.gz. =========================================================================== =================================================== ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 =========================================================================== =================================================== ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> Patching for openmsx-20.0_1 ===> Applying FreeBSD patches for openmsx-20.0_1 from /usr/ports/emulators/openmsx/files =========================================================================== =================================================== ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 ===> openmsx-20.0_1 depends on package: gmake>=4.4.1 - not found ===> Installing existing package /packages/All/gmake-4.4.1.pkg [pkg.DaveG.ca] Installing gmake-4.4.1... [pkg.DaveG.ca] `-- Installing gettext-runtime-0.26... [pkg.DaveG.ca] | `-- Installing indexinfo-0.3.1_1... [pkg.DaveG.ca] | `-- Extracting indexinfo-0.3.1_1: . done [pkg.DaveG.ca] `-- Extracting gettext-runtime-0.26: .......... done [pkg.DaveG.ca] Extracting gmake-4.4.1: .......... done ===> openmsx-20.0_1 depends on package: gmake>=4.4.1 - found ===> Returning to build of openmsx-20.0_1 ===> openmsx-20.0_1 depends on package: pkgconf>=1.3.0_1 - not found ===> Installing existing package /packages/All/pkgconf-2.4.3,1.pkg [pkg.DaveG.ca] Installing pkgconf-2.4.3,1... [pkg.DaveG.ca] Extracting pkgconf-2.4.3,1: .......... done ===> openmsx-20.0_1 depends on package: pkgconf>=1.3.0_1 - found ===> Returning to build of openmsx-20.0_1 ===> openmsx-20.0_1 depends on file: /usr/local/bin/python3.11 - not found ===> Installing existing package /packages/All/python311-3.11.14.pkg [pkg.DaveG.ca] Installing python311-3.11.14... [pkg.DaveG.ca] `-- Installing libffi-3.5.1... [pkg.DaveG.ca] `-- Extracting libffi-3.5.1: .......... done [pkg.DaveG.ca] `-- Installing mpdecimal-4.0.1... [pkg.DaveG.ca] `-- Extracting mpdecimal-4.0.1: .......... done [pkg.DaveG.ca] `-- Installing readline-8.3.3... [pkg.DaveG.ca] `-- Extracting readline-8.3.3: .......... done [pkg.DaveG.ca] Extracting python311-3.11.14: .......... done ===== Message from python311-3.11.14: -- Note that some standard Python modules are provided as separate ports as they require additional dependencies. They are available as: py311-gdbm databases/py-gdbm@py311 py311-sqlite3 databases/py-sqlite3@py311 py311-tkinter x11-toolkits/py-tkinter@py311 ===> openmsx-20.0_1 depends on file: /usr/local/bin/python3.11 - found ===> Returning to build of openmsx-20.0_1 ===> openmsx-20.0_1 depends on file: /usr/local/bin/sdl2-config - not found ===> Installing existing package /packages/All/sdl2-2.32.10.pkg [pkg.DaveG.ca] Installing sdl2-2.32.10... [pkg.DaveG.ca] `-- Installing libX11-1.8.12,1... [pkg.DaveG.ca] | `-- Installing libxcb-1.17.0... [pkg.DaveG.ca] | | `-- Installing libXau-1.0.12... [pkg.DaveG.ca] | | `-- Extracting libXau-1.0.12: .......... done [pkg.DaveG.ca] | | `-- Installing libXdmcp-1.1.5... [pkg.DaveG.ca] | | `-- Installing xorgproto-2024.1... [pkg.DaveG.ca] | | `-- Extracting xorgproto-2024.1: .......... done [pkg.DaveG.ca] | | `-- Extracting libXdmcp-1.1.5: ...... done [pkg.DaveG.ca] | `-- Extracting libxcb-1.17.0: .......... done [pkg.DaveG.ca] `-- Extracting libX11-1.8.12,1: .......... done [pkg.DaveG.ca] `-- Installing libXScrnSaver-1.2.4_1... [pkg.DaveG.ca] | `-- Installing libXext-1.3.6,1... [pkg.DaveG.ca] | `-- Extracting libXext-1.3.6,1: .......... done [pkg.DaveG.ca] `-- Extracting libXScrnSaver-1.2.4_1: .......... done [pkg.DaveG.ca] `-- Installing libXcursor-1.2.3... [pkg.DaveG.ca] | `-- Installing libXfixes-6.0.1... [pkg.DaveG.ca] | `-- Extracting libXfixes-6.0.1: ....... done [pkg.DaveG.ca] | `-- Installing libXrender-0.9.12... [pkg.DaveG.ca] | `-- Extracting libXrender-0.9.12: ....... done [pkg.DaveG.ca] `-- Extracting libXcursor-1.2.3: .......... done [pkg.DaveG.ca] `-- Installing libXi-1.8.2,1... [pkg.DaveG.ca] `-- Extracting libXi-1.8.2,1: .......... done [pkg.DaveG.ca] `-- Installing libXrandr-1.5.4... [pkg.DaveG.ca] `-- Extracting libXrandr-1.5.4: .......... done [pkg.DaveG.ca] `-- Installing libglvnd-1.7.0... [pkg.DaveG.ca] `-- Extracting libglvnd-1.7.0: .......... done [pkg.DaveG.ca] `-- Installing libinotify-20240724_3... [pkg.DaveG.ca] `-- Extracting libinotify-20240724_3: .......... done [pkg.DaveG.ca] `-- Installing libxkbcommon-1.13.1... [pkg.DaveG.ca] | `-- Installing libxml2-2.14.6... [pkg.DaveG.ca] | `-- Extracting libxml2-2.14.6: .......... done [pkg.DaveG.ca] | `-- Installing wayland-1.24.0_2... [pkg.DaveG.ca] | | `-- Installing expat-2.7.3... [pkg.DaveG.ca] | | `-- Extracting expat-2.7.3: .......... done [pkg.DaveG.ca] | | `-- Installing libepoll-shim-0.0.20240608... [pkg.DaveG.ca] | | `-- Extracting libepoll-shim-0.0.20240608: .......... done [pkg.DaveG.ca] | `-- Extracting wayland-1.24.0_2: .......... done [pkg.DaveG.ca] | `-- Installing xkeyboard-config-2.41_4... [pkg.DaveG.ca] | `-- Extracting xkeyboard-config-2.41_4: .......... done [pkg.DaveG.ca] `-- Extracting libxkbcommon-1.13.1: .......... done [pkg.DaveG.ca] `-- Installing mesa-libs-24.1.7_1... [pkg.DaveG.ca] | `-- Installing libXdamage-1.1.6... [pkg.DaveG.ca] | `-- Extracting libXdamage-1.1.6: ...... done [pkg.DaveG.ca] | `-- Installing libXxf86vm-1.1.6... [pkg.DaveG.ca] | `-- Extracting libXxf86vm-1.1.6: .......... done [pkg.DaveG.ca] | `-- Installing libdrm-2.4.131,1... [pkg.DaveG.ca] | | `-- Installing libpciaccess-0.18.1_1... [pkg.DaveG.ca] | | `-- Installing hwdata-0.403,1... [pkg.DaveG.ca] | | `-- Extracting hwdata-0.403,1: ...... done [pkg.DaveG.ca] | | `-- Extracting libpciaccess-0.18.1_1: ..... done [pkg.DaveG.ca] | `-- Extracting libdrm-2.4.131,1: .......... done [pkg.DaveG.ca] | `-- Installing libxshmfence-1.3.3... [pkg.DaveG.ca] | `-- Extracting libxshmfence-1.3.3: ...... done [pkg.DaveG.ca] | `-- Installing zstd-1.5.7_1... [pkg.DaveG.ca] | `-- Extracting zstd-1.5.7_1: .......... done [pkg.DaveG.ca] `-- Extracting mesa-libs-24.1.7_1: .......... done [pkg.DaveG.ca] `-- Installing vulkan-loader-1.4.336... [pkg.DaveG.ca] `-- Extracting vulkan-loader-1.4.336: ....... done [pkg.DaveG.ca] Extracting sdl2-2.32.10: .......... done ===== Message from libinotify-20240724_3: -- You might want to consider increasing the kern.maxfiles tunable if you plan to use this library for applications that need to monitor activity of a lot of files. ===== Message from wayland-1.24.0_2: -- Wayland requires XDG_RUNTIME_DIR to be defined to a path that will contain "wayland-%d" unix(4) sockets. This is usually handled by consolekit2 (via ck-launch-session) or pam_xdg (via login). ===== Message from libxkbcommon-1.13.1: -- If arrow keys don't work under X11 switch to legacy rules e.g., For sh/bash/ksh/zsh run and (optionally) add into ~/.profile: export XKB_DEFAULT_RULES=xorg For csh/tcsh run and (optionally) add into ~/.login: setenv XKB_DEFAULT_RULES xorg ===> openmsx-20.0_1 depends on file: /usr/local/bin/sdl2-config - found ===> Returning to build of openmsx-20.0_1 ===> openmsx-20.0_1 depends on package: xorgproto>=0 - found ===> openmsx-20.0_1 depends on file: /usr/local/bin/ccache - not found ===> Installing existing package /packages/All/ccache-3.7.12_8.pkg [pkg.DaveG.ca] Installing ccache-3.7.12_8... [pkg.DaveG.ca] Extracting ccache-3.7.12_8: ......... done Create compiler links... create symlink for cc create symlink for cc (world) create symlink for c++ create symlink for c++ (world) create symlink for CC create symlink for CC (world) create symlink for clang create symlink for clang (world) create symlink for clang++ create symlink for clang++ (world) ===== Message from ccache-3.7.12_8: -- NOTE: Please read /usr/local/share/doc/ccache/ccache-howto-freebsd.txt for information on using ccache with FreeBSD ports and src. ===> openmsx-20.0_1 depends on file: /usr/local/bin/ccache - found ===> Returning to build of openmsx-20.0_1 =========================================================================== =================================================== ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 ===> openmsx-20.0_1 depends on shared library: libao.so - not found ===> Installing existing package /packages/All/libao-1.2.0_7.pkg [pkg.DaveG.ca] Installing libao-1.2.0_7... [pkg.DaveG.ca] Extracting libao-1.2.0_7: .......... done ===> openmsx-20.0_1 depends on shared library: libao.so - found (/usr/local/lib/libao.so) ===> Returning to build of openmsx-20.0_1 ===> openmsx-20.0_1 depends on shared library: libasound.so - not found ===> Installing existing package /packages/All/alsa-lib-1.2.14.pkg [pkg.DaveG.ca] Installing alsa-lib-1.2.14... [pkg.DaveG.ca] Extracting alsa-lib-1.2.14: .......... done ===> openmsx-20.0_1 depends on shared library: libasound.so - found (/usr/local/lib/libasound.so) ===> Returning to build of openmsx-20.0_1 ===> openmsx-20.0_1 depends on shared library: libfreetype.so - not found ===> Installing existing package /packages/All/freetype2-2.14.1.pkg [pkg.DaveG.ca] Installing freetype2-2.14.1... [pkg.DaveG.ca] `-- Installing brotli-1.2.0,1... [pkg.DaveG.ca] `-- Extracting brotli-1.2.0,1: .......... done [pkg.DaveG.ca] `-- Installing png-1.6.53... [pkg.DaveG.ca] `-- Extracting png-1.6.53: .......... done [pkg.DaveG.ca] Extracting freetype2-2.14.1: .......... done ===== Message from freetype2-2.14.1: -- The 2.7.x series now uses the new subpixel hinting mode (V40 port's option) as the default, emulating a modern version of ClearType. This change inevitably leads to different rendering results, and you might change port's options to adapt it to your taste (or use the new "FREETYPE_PROPERTIES" environment variable). The environment variable "FREETYPE_PROPERTIES" can be used to control the driver properties. Example: FREETYPE_PROPERTIES=truetype:interpreter-version=35 \ cff:no-stem-darkening=1 \ autofitter:warping=1 This allows to select, say, the subpixel hinting mode at runtime for a given application. If LONG_PCF_NAMES port's option was enabled, the PCF family names may include the foundry and information whether they contain wide characters. For example, "Sony Fixed" or "Misc Fixed Wide", instead of "Fixed". This can be disabled at run time with using pcf:no-long-family-names property, if needed. Example: FREETYPE_PROPERTIES=pcf:no-long-family-names=1 How to recreate fontconfig cache with using such environment variable, if needed: # env FREETYPE_PROPERTIES=pcf:no-long-family-names=1 fc-cache -fsv The controllable properties are listed in the section "Controlling FreeType Modules" in the reference's table of contents (/usr/local/share/doc/freetype2/reference/index.html, if documentation was installed). ===> openmsx-20.0_1 depends on shared library: libfreetype.so - found (/usr/local/lib/libfreetype.so) ===> Returning to build of openmsx-20.0_1 ===> openmsx-20.0_1 depends on shared library: libogg.so - not found ===> Installing existing package /packages/All/libogg-1.3.6,4.pkg [pkg.DaveG.ca] Installing libogg-1.3.6,4... [pkg.DaveG.ca] Extracting libogg-1.3.6,4: .......... done ===> openmsx-20.0_1 depends on shared library: libogg.so - found (/usr/local/lib/libogg.so) ===> Returning to build of openmsx-20.0_1 ===> openmsx-20.0_1 depends on shared library: libpng.so - found (/usr/local/lib/libpng.so) ===> openmsx-20.0_1 depends on shared library: libtheora.so - not found ===> Installing existing package /packages/All/libtheora-1.2.0_1.pkg [pkg.DaveG.ca] Installing libtheora-1.2.0_1... [pkg.DaveG.ca] Extracting libtheora-1.2.0_1: .......... done ===> openmsx-20.0_1 depends on shared library: libtheora.so - found (/usr/local/lib/libtheora.so) ===> Returning to build of openmsx-20.0_1 ===> openmsx-20.0_1 depends on shared library: libvorbis.so - not found ===> Installing existing package /packages/All/libvorbis-1.3.7_2,3.pkg [pkg.DaveG.ca] Installing libvorbis-1.3.7_2,3... [pkg.DaveG.ca] Extracting libvorbis-1.3.7_2,3: .......... done ===> openmsx-20.0_1 depends on shared library: libvorbis.so - found (/usr/local/lib/libvorbis.so) ===> Returning to build of openmsx-20.0_1 ===> openmsx-20.0_1 depends on shared library: libGL.so - found (/usr/local/lib/libGL.so) ===> openmsx-20.0_1 depends on shared library: libGLEW.so - not found ===> Installing existing package /packages/All/glew-2.2.0_3.pkg [pkg.DaveG.ca] Installing glew-2.2.0_3... [pkg.DaveG.ca] `-- Installing libGLU-9.0.3... [pkg.DaveG.ca] `-- Extracting libGLU-9.0.3: ..... done [pkg.DaveG.ca] Extracting glew-2.2.0_3: .......... done ===> openmsx-20.0_1 depends on shared library: libGLEW.so - found (/usr/local/lib/libGLEW.so) ===> Returning to build of openmsx-20.0_1 ===> openmsx-20.0_1 depends on shared library: libSDL2.so - found (/usr/local/lib/libSDL2.so) ===> openmsx-20.0_1 depends on shared library: libSDL2_ttf.so - not found ===> Installing existing package /packages/All/sdl2_ttf-2.24.0.pkg [pkg.DaveG.ca] Installing sdl2_ttf-2.24.0... [pkg.DaveG.ca] `-- Installing harfbuzz-12.3.0... [pkg.DaveG.ca] | `-- Installing glib-2.84.4,2... [pkg.DaveG.ca] | | `-- Installing libiconv-1.18_1... [pkg.DaveG.ca] | | `-- Extracting libiconv-1.18_1: .......... done [pkg.DaveG.ca] | | `-- Installing pcre2-10.47_1... [pkg.DaveG.ca] | | `-- Extracting pcre2-10.47_1: .......... done [pkg.DaveG.ca] | | `-- Installing py311-packaging-25.0... [pkg.DaveG.ca] | | `-- Extracting py311-packaging-25.0: .......... done [pkg.DaveG.ca] | `-- Extracting glib-2.84.4,2: .......... done [pkg.DaveG.ca] | `-- Installing graphite2-1.3.14... [pkg.DaveG.ca] | `-- Extracting graphite2-1.3.14: .......... done [pkg.DaveG.ca] `-- Extracting harfbuzz-12.3.0: .......... done [pkg.DaveG.ca] Extracting sdl2_ttf-2.24.0: .......... done ==> Running trigger: gio-modules.ucl Generating GIO modules cache ==> Running trigger: glib-schemas.ucl Compiling glib schemas No schema files found: doing nothing. ===> openmsx-20.0_1 depends on shared library: libSDL2_ttf.so - found (/usr/local/lib/libSDL2_ttf.so) ===> Returning to build of openmsx-20.0_1 ===> openmsx-20.0_1 depends on shared library: libtcl86.so - not found ===> Installing existing package /packages/All/tcl86-8.6.17.pkg [pkg.DaveG.ca] Installing tcl86-8.6.17... [pkg.DaveG.ca] Extracting tcl86-8.6.17: .......... done ===> openmsx-20.0_1 depends on shared library: libtcl86.so - found (/usr/local/lib/libtcl86.so) ===> Returning to build of openmsx-20.0_1 =========================================================================== =================================================== ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> Configuring for openmsx-20.0_1 =========================================================================== =================================================== ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> Building for openmsx-20.0_1 Using Python: python3 build/main.mk:348: Unsupported compiler: c++, please update Makefile Probing target system... Using libraries from ports directory /usr/local. Creating derived/x86_64-freebsd-opt/config/probed_defs.mk... Creating derived/x86_64-freebsd-opt/config/systemfuncs.hh... Found libraries: ALSA: no FreeType: version GLEW: version unknown libogg: version unknown libpng: version 1.6.53 libtheora: version unknown libvorbis: version unknown OpenGL: version 4.6 SDL2: version 2.32.10 SDL2_ttf: version 2.24.0 Tcl: version 8.6.17 zlib: version 1.3.1 Components overview: Emulation core: yes GL renderer: yes Laserdisc: yes ALSA MIDI: no Customisable options: Install to /opt/openMSX (you can edit these in build/custom.mk) If you are satisfied with the probe results, run "make" to start the build. Otherwise, install some libraries and headers and rerun "configure". If the detected libraries differ from what you think is installed on this system, please check the log file: derived/x86_64-freebsd-opt/config/probe.log Creating derived/x86_64-freebsd-opt/config/components_defs.mk... Using Python: python3 build/main.mk:348: Unsupported compiler: c++, please update Makefile Build configuration: Platform: x86_64-freebsd Flavour: opt Compiler: c++ Subset: full build Creating derived/x86_64-freebsd-opt/config/build-info.hh... Creating derived/x86_64-freebsd-opt/config/components.hh... Creating derived/x86_64-freebsd-opt/config/Version.ii... Compiling Autofire.cc... Compiling CartridgeSlotManager.cc... Compiling CLIOption.cc... Compiling ChakkariCopy.cc... Compiling CliExtension.cc... Compiling Connector.cc... Compiling CommandLineParser.cc... Compiling DeviceFactory.cc... Compiling DebugDevice.cc... Compiling DummyDevice.cc... Compiling DummyPrinterPortDevice.cc... Compiling DynamicClock.cc... Compiling EmptyPatch.cc... Compiling FirmwareSwitch.cc... Compiling EmuTime.cc... Compiling GlobalSettings.cc... Compiling I8255.cc... Compiling IPSPatch.cc... Compiling LedStatus.cc... Compiling MSXBunsetsu.cc... Compiling MSXCielTurbo.cc... Compiling MSXDevice.cc... Compiling MSXDeviceSwitch.cc... Compiling MSXE6Timer.cc... Compiling MSXHiResTimer.cc... Compiling MSXKanji.cc... Compiling MSXKanji12.cc... Compiling MSXMatsushita.cc... Compiling MSXPPI.cc... Compiling MSXPrinterPort.cc... Compiling MSXMotherBoard.cc... Compiling MSXRTC.cc... Compiling MSXResetStatusRegister.cc... Compiling MSXS1985.cc... Compiling MSXS1990.cc... Compiling MSXSwitchedDevice.cc... Compiling MSXToshibaTcx200x.cc... Compiling MSXTurboRPause.cc... Compiling MSXVictorHC9xSystemControl.cc... Compiling Pluggable.cc... Compiling PluggingController.cc... Compiling PasswordCart.cc... Compiling Printer.cc... Compiling PrinterPortDevice.cc... Compiling PluggableFactory.cc... Compiling PrinterPortLogger.cc... Compiling PrinterPortSimpl.cc... Compiling RP5C01.cc... Compiling RTSchedulable.cc... Compiling RTScheduler.cc... Compiling RealTime.cc... Compiling Reactor.cc... Compiling ReplayCLI.cc... Compiling RenShaTurbo.cc... Compiling ReverseManager.cc... Compiling SC3000PPI.cc... Compiling SG1000Pause.cc... Compiling SVIPPI.cc... Compiling SVIPrinterPort.cc... Compiling SaveStateCLI.cc... Compiling Schedulable.cc... Compiling Scheduler.cc... Compiling SensorKid.cc... Compiling SpeedManager.cc... Compiling ThrottleManager.cc... Compiling Version.cc... Compiling YamahaSKW01.cc... Compiling main.cc... Compiling serialize.cc... Compiling serialize_meta.cc... Compiling 3rdparty/ImGuiFileDialog/ImGuiFileDialog.cc... Compiling serialize_core.cc... Compiling 3rdparty/imgui/imgui_demo.cc... Compiling 3rdparty/imgui/imgui.cc... Compiling 3rdparty/imgui/imgui_draw.cc... Compiling 3rdparty/imgui/imgui_impl_opengl3.cc... Compiling 3rdparty/imgui/imgui_impl_sdl2.cc... Compiling 3rdparty/imgui/imgui_tables.cc... Compiling 3rdparty/imgui/imgui_widgets.cc... Compiling 3rdparty/imgui/imgui_stdlib.cc... Compiling 3rdparty/imgui/misc/freetype/imgui_freetype.cc... Compiling cassette/CassetteDevice.cc... src/MSXPrinterPort.cc:109:22: warning: offset of on non-standard-layout type 'MSXPrinterPort' [-Winvalid-offsetof] 109 | const auto& pPort = OUTER(MSXPrinterPort, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/MSXPrinterPort.cc:115:16: warning: offset of on non-standard-layout type 'MSXPrinterPort' [-Winvalid-offsetof] 115 | auto& pPort = OUTER(MSXPrinterPort, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling cassette/CasImage.cc... src/MSXS1990.cc:103:22: warning: offset of on non-standard-layout type 'MSXS1990' [-Winvalid-offsetof] 103 | const auto& s1990 = OUTER(MSXS1990, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/MSXS1990.cc:109:16: warning: offset of on non-standard-layout type 'MSXS1990' [-Winvalid-offsetof] 109 | auto& s1990 = OUTER(MSXS1990, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling cassette/CassetteImage.cc... Compiling cassette/CassettePlayer.cc... Compiling cassette/CassettePlayerCLI.cc... Compiling cassette/CassettePort.cc... Compiling cassette/DummyCassetteDevice.cc... Compiling cassette/WavImage.cc... Compiling commands/Command.cc... Compiling commands/CommandException.cc... Compiling commands/Completer.cc... Compiling commands/GlobalCommandController.cc... Compiling commands/InfoCommand.cc... Compiling commands/Interpreter.cc... Compiling commands/InfoTopic.cc... src/CartridgeSlotManager.cc:447:18: warning: offset of on non-standard-layout type 'CartridgeSlotManager' [-Winvalid-offsetof] 447 | auto& manager = OUTER(CartridgeSlotManager, extSlotInfo); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 1 warning generated. Compiling commands/MSXCommandController.cc... Compiling commands/ProxyCommand.cc... Compiling commands/TclArgParser.cc... Compiling commands/TclCallback.cc... Compiling commands/TclObject.cc... Compiling commands/TclParser.cc... Compiling config/DeviceConfig.cc... Compiling config/HardwareConfig.cc... Compiling config/XMLElement.cc... In file included from src/MSXMatsushita.cc:4: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/MSXMatsushita.cc:4: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/MSXMatsushita.cc:4: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/MSXMatsushita.cc:4: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/MSXMatsushita.cc:4: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/MSXMatsushita.cc:4: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/MSXMatsushita.cc:4: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/MSXMatsushita.cc:4: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/MSXMatsushita.cc:4: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/MSXMatsushita.cc:4: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 10 warnings generated. Compiling config/SettingsConfig.cc... src/PluggingController.cc:86:29: warning: offset of on non-standard-layout type 'PluggingController' [-Winvalid-offsetof] 86 | auto& pluggingController = OUTER(PluggingController, plugCmd); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/PluggingController.cc:135:29: warning: offset of on non-standard-layout type 'PluggingController' [-Winvalid-offsetof] 135 | auto& pluggingController = OUTER(PluggingController, plugCmd); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/PluggingController.cc:172:29: warning: offset of on non-standard-layout type 'PluggingController' [-Winvalid-offsetof] 172 | auto& pluggingController = OUTER(PluggingController, unplugCmd); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/PluggingController.cc:190:4: warning: offset of on non-standard-layout type 'PluggingController' [-Winvalid-offsetof] 190 | OUTER(PluggingController, unplugCmd).connectors, | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/PluggingController.cc:245:29: warning: offset of on non-standard-layout type 'PluggingController' [-Winvalid-offsetof] 245 | auto& pluggingController = OUTER(PluggingController, pluggableInfo); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/PluggingController.cc:273:4: warning: offset of on non-standard-layout type 'PluggingController' [-Winvalid-offsetof] 273 | OUTER(PluggingController, pluggableInfo).pluggables, | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/PluggingController.cc:289:29: warning: offset of on non-standard-layout type 'PluggingController' [-Winvalid-offsetof] 289 | auto& pluggingController = OUTER(PluggingController, connectorInfo); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/PluggingController.cc:315:4: warning: offset of on non-standard-layout type 'PluggingController' [-Winvalid-offsetof] 315 | OUTER(PluggingController, connectorInfo).connectors, | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/PluggingController.cc:331:35: warning: offset of on non-standard-layout type 'PluggingController' [-Winvalid-offsetof] 331 | const auto& pluggingController = OUTER(PluggingController, connectionClassInfo); | ^ ~~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/PluggingController.cc:371:30: warning: offset of on non-standard-layout type 'PluggingController' [-Winvalid-offsetof] 371 | auto& pluggingController = OUTER(PluggingController, connectionClassInfo); | ^ ~~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/PluggingController.cc:1: In file included from src/PluggingController.hh:4: In file included from src/input/RecordedCommand.hh:7: src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl *>, (lambda at src/PluggingController.cc:250:20)>>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements *>, (lambda at src/PluggingController.cc:250:20)>>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/PluggingController.cc:248:10: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements> &, (lambda at src/PluggingController.cc:250:20)>>' requested here 248 | result.addListElements( | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl, (lambda at src/PluggingController.cc:294:20)>>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements, (lambda at src/PluggingController.cc:294:20)>>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/PluggingController.cc:292:10: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements &, (lambda at src/PluggingController.cc:294:20)>>' requested here 292 | result.addListElements( | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/PluggingController.cc:343:10: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements &>' requested here 343 | result.addListElements(classes); | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ 13 warnings generated. Compiling console/ConsoleLine.cc... Compiling console/OSDGUI.cc... Compiling console/OSDImageBasedWidget.cc... Compiling console/OSDGUILayer.cc... Compiling console/OSDRectangle.cc... Compiling console/OSDTopWidget.cc... src/Printer.cc:1593:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 1593 | VLA(const uint8_t*, rowPointers, sizeY); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/Printer.cc:1593:35: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function 1593 | VLA(const uint8_t*, rowPointers, sizeY); | ^ 1 warning generated. Compiling console/OSDText.cc... Compiling console/OSDWidget.cc... In file included from src/Autofire.cc:6: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/Autofire.cc:6: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling console/TTFFont.cc... Compiling cpu/BreakPointBase.cc... Compiling cpu/CPUClock.cc... Compiling cpu/CPUCore.cc... Compiling cpu/CPURegs.cc... Compiling cpu/Dasm.cc... Compiling cpu/IRQHelper.cc... Compiling cpu/MSXCPU.cc... Compiling cpu/MSXCPUInterface.cc... Compiling cpu/MSXMultiDevice.cc... Compiling cpu/MSXMultiIODevice.cc... Compiling cpu/MSXMultiMemDevice.cc... Compiling cpu/MSXWatchIODevice.cc... Compiling cpu/VDPIODelay.cc... In file included from src/DeviceFactory.cc:10: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:10: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:10: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:10: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:10: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:10: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:10: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:10: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:10: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:10: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:12: In file included from src/serial/MSXFacMidiInterface.hh:7: src/serial/I8251.hh:75:18: warning: offset of on non-standard-layout type 'I8251' [-Winvalid-offsetof] 75 | auto& i8251 = OUTER(I8251, syncRecv); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:12: In file included from src/serial/MSXFacMidiInterface.hh:7: src/serial/I8251.hh:83:18: warning: offset of on non-standard-layout type 'I8251' [-Winvalid-offsetof] 83 | auto& i8251 = OUTER(I8251, syncTrans); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:32: In file included from src/sound/MSXYamahaSFG.hh:6: src/serial/YM2148.hh:48:19: warning: offset of on non-standard-layout type 'YM2148' [-Winvalid-offsetof] 48 | auto& ym2148 = OUTER(YM2148, syncRecv); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:32: In file included from src/sound/MSXYamahaSFG.hh:6: src/serial/YM2148.hh:56:19: warning: offset of on non-standard-layout type 'YM2148' [-Winvalid-offsetof] 56 | auto& ym2148 = OUTER(YM2148, syncTrans); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:33: In file included from src/serial/MusicModuleMIDI.hh:5: src/serial/MC6850.hh:48:19: warning: offset of on non-standard-layout type 'MC6850' [-Winvalid-offsetof] 48 | auto& mc6850 = OUTER(MC6850, syncRecv); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:33: In file included from src/serial/MusicModuleMIDI.hh:5: src/serial/MC6850.hh:56:19: warning: offset of on non-standard-layout type 'MC6850' [-Winvalid-offsetof] 56 | auto& mc6850 = OUTER(MC6850, syncTrans); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:79: src/video/v9990/V9990.hh:377:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 377 | auto& v9990 = OUTER(V9990, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:79: src/video/v9990/V9990.hh:385:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 385 | auto& v9990 = OUTER(V9990, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:79: src/video/v9990/V9990.hh:393:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 393 | auto& v9990 = OUTER(V9990, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:79: src/video/v9990/V9990.hh:401:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 401 | auto& v9990 = OUTER(V9990, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:79: src/video/v9990/V9990.hh:409:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 409 | auto& v9990 = OUTER(V9990, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:79: src/video/v9990/V9990.hh:417:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 417 | auto& v9990 = OUTER(V9990, syncCmdEnd); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:98: In file included from src/laserdisc/PioneerLDControl.hh:4: src/laserdisc/LaserdiscPlayer.hh:127:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 127 | auto& player = OUTER(LaserdiscPlayer, syncAck); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:98: In file included from src/laserdisc/PioneerLDControl.hh:4: src/laserdisc/LaserdiscPlayer.hh:135:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 135 | auto& player = OUTER(LaserdiscPlayer, syncOdd); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/DeviceFactory.cc:98: In file included from src/laserdisc/PioneerLDControl.hh:4: src/laserdisc/LaserdiscPlayer.hh:143:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 143 | auto& player = OUTER(LaserdiscPlayer, syncEven); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 25 warnings generated. Compiling debugger/DasmTables.cc... src/CommandLineParser.cc:300:17: warning: offset of on non-standard-layout type 'CommandLineParser' [-Winvalid-offsetof] 300 | auto& parser = OUTER(CommandLineParser, controlOption); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/CommandLineParser.cc:439:17: warning: offset of on non-standard-layout type 'CommandLineParser' [-Winvalid-offsetof] 439 | auto& parser = OUTER(CommandLineParser, helpOption); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/CommandLineParser.cc:484:17: warning: offset of on non-standard-layout type 'CommandLineParser' [-Winvalid-offsetof] 484 | auto& parser = OUTER(CommandLineParser, versionOption); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/CommandLineParser.cc:499:17: warning: offset of on non-standard-layout type 'CommandLineParser' [-Winvalid-offsetof] 499 | auto& parser = OUTER(CommandLineParser, machineOption); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/CommandLineParser.cc:522:17: warning: offset of on non-standard-layout type 'CommandLineParser' [-Winvalid-offsetof] 522 | auto& parser = OUTER(CommandLineParser, settingOption); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/CommandLineParser.cc:549:17: warning: offset of on non-standard-layout type 'CommandLineParser' [-Winvalid-offsetof] 549 | auto& parser = OUTER(CommandLineParser, testConfigOption); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/CommandLineParser.cc:563:17: warning: offset of on non-standard-layout type 'CommandLineParser' [-Winvalid-offsetof] 563 | auto& parser = OUTER(CommandLineParser, bashOption); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 7 warnings generated. Compiling debugger/Debugger.cc... Compiling debugger/Probe.cc... Compiling debugger/ProbeBreakPoint.cc... Compiling debugger/SimpleDebuggable.cc... Compiling events/AdhocCliCommParser.cc... Compiling events/AfterCommand.cc... Compiling debugger/SymbolManager.cc... Compiling events/BooleanInput.cc... Compiling events/CliComm.cc... Compiling events/CliConnection.cc... Compiling events/CliServer.cc... Compiling events/Event.cc... Compiling events/EventDistributor.cc... Compiling events/GlobalCliComm.cc... Compiling events/HotKey.cc... Compiling events/InputEventFactory.cc... Compiling events/InputEventGenerator.cc... Compiling events/MessageCommand.cc... Compiling events/MSXCliComm.cc... Compiling events/SDLKey.cc... In file included from src/cassette/CassettePort.cc:3: src/cassette/CassettePlayer.hh:132:15: warning: offset of on non-standard-layout type 'CassettePlayer' [-Winvalid-offsetof] 132 | auto& cp = OUTER(CassettePlayer, syncEndOfTape); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/cassette/CassettePort.cc:3: src/cassette/CassettePlayer.hh:140:15: warning: offset of on non-standard-layout type 'CassettePlayer' [-Winvalid-offsetof] 140 | auto& cp = OUTER(CassettePlayer, syncAudioEmu); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/cassette/CassettePort.cc:6: src/laserdisc/LaserdiscPlayer.hh:127:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 127 | auto& player = OUTER(LaserdiscPlayer, syncAck); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/cassette/CassettePort.cc:6: src/laserdisc/LaserdiscPlayer.hh:135:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 135 | auto& player = OUTER(LaserdiscPlayer, syncOdd); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/cassette/CassettePort.cc:6: src/laserdisc/LaserdiscPlayer.hh:143:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 143 | auto& player = OUTER(LaserdiscPlayer, syncEven); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 5 warnings generated. Compiling events/StdioMessages.cc... Compiling events/TclCallbackMessages.cc... Compiling events/Socket.cc... In file included from src/ReverseManager.cc:1: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/ReverseManager.cc:1: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/ReverseManager.cc:4: src/debugger/Debugger.hh:79:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 79 | [[nodiscard]] Debugger& debugger() { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/ReverseManager.cc:4: src/debugger/Debugger.hh:80:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 80 | [[nodiscard]] const Debugger& debugger() const { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/ReverseManager.cc:963:18: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 963 | auto& manager = OUTER(ReverseManager, reverseCmd); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 5 warnings generated. In file included from src/MSXMotherBoard.cc:9: src/debugger/Debugger.hh:79:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 79 | [[nodiscard]] Debugger& debugger() { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/MSXMotherBoard.cc:9: src/debugger/Debugger.hh:80:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 80 | [[nodiscard]] const Debugger& debugger() const { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/MSXMotherBoard.cc:35: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/MSXMotherBoard.cc:35: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/MSXMotherBoard.cc:1: In file included from src/MSXMotherBoard.hh:4: In file included from src/settings/BooleanSetting.hh:4: In file included from src/settings/Setting.hh:5: src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl *>, const std::string &(openmsx::HardwareConfig::*)() const>>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements *>, const std::string &(openmsx::HardwareConfig::*)() const>>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/MSXMotherBoard.cc:865:9: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements> &, const std::string &(openmsx::HardwareConfig::*)() const>>' requested here 865 | result.addListElements( | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl *>, const std::string &(openmsx::MSXDevice::*)() const>>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements *>, const std::string &(openmsx::MSXDevice::*)() const>>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/MSXMotherBoard.cc:1037:14: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements> &, const std::string &(openmsx::MSXDevice::*)() const>>' requested here 1037 | deviceList.addListElements( | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl, std::string_view openmsx::MachineMediaInfo::ProviderInfo::*>>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements, std::string_view openmsx::MachineMediaInfo::ProviderInfo::*>>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/MSXMotherBoard.cc:1070:10: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements &, std::string_view openmsx::MachineMediaInfo::ProviderInfo::*>>' requested here 1070 | result.addListElements( | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl, (lambda at src/MSXMotherBoard.cc:1124:20)>>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements, (lambda at src/MSXMotherBoard.cc:1124:20)>>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/MSXMotherBoard.cc:1122:10: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements &, (lambda at src/MSXMotherBoard.cc:1124:20)>>' requested here 1122 | result.addListElements( | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ 8 warnings generated. Compiling fdc/AVTFDC.cc... Compiling fdc/CanonFDC.cc... Compiling fdc/BootBlocks.cc... Compiling fdc/DMKDiskImage.cc... Compiling fdc/DSKDiskImage.cc... Compiling fdc/DirAsDSK.cc... Compiling fdc/Disk.cc... Compiling fdc/DiskChanger.cc... Compiling fdc/DiskContainer.cc... Compiling fdc/DiskDrive.cc... Compiling fdc/DiskFactory.cc... In file included from src/debugger/SimpleDebuggable.cc:3: src/debugger/Debugger.hh:79:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 79 | [[nodiscard]] Debugger& debugger() { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/debugger/SimpleDebuggable.cc:3: src/debugger/Debugger.hh:80:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 80 | [[nodiscard]] const Debugger& debugger() const { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling fdc/DiskImageCLI.cc... In file included from src/console/OSDImageBasedWidget.cc:1: In file included from src/console/OSDImageBasedWidget.hh:4: In file included from src/console/OSDWidget.hh:4: src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl::Iter, (lambda at src/console/OSDImageBasedWidget.cc:104:53)>>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements::Iter, (lambda at src/console/OSDImageBasedWidget.cc:104:53)>>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/console/OSDImageBasedWidget.cc:104:10: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements, (lambda at src/console/OSDImageBasedWidget.cc:104:53)>>' requested here 104 | result.addListElements(view::transform(xrange(4), [&](auto i) { | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ 1 warning generated. In file included from src/debugger/Probe.cc:3: src/debugger/Debugger.hh:79:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 79 | [[nodiscard]] Debugger& debugger() { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/debugger/Probe.cc:3: src/debugger/Debugger.hh:80:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 80 | [[nodiscard]] const Debugger& debugger() const { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling fdc/DiskManipulator.cc... Compiling fdc/DiskImageUtils.cc... Compiling fdc/DiskName.cc... Compiling fdc/DiskPartition.cc... src/console/OSDGUI.cc:60:14: warning: offset of on non-standard-layout type 'OSDGUI' [-Winvalid-offsetof] 60 | auto& gui = OUTER(OSDGUI, osdCommand); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/console/OSDGUI.cc:90:14: warning: offset of on non-standard-layout type 'OSDGUI' [-Winvalid-offsetof] 90 | auto& gui = OUTER(OSDGUI, osdCommand); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/console/OSDGUI.cc:107:14: warning: offset of on non-standard-layout type 'OSDGUI' [-Winvalid-offsetof] 107 | auto& gui = OUTER(OSDGUI, osdCommand); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/console/OSDGUI.cc:132:14: warning: offset of on non-standard-layout type 'OSDGUI' [-Winvalid-offsetof] 132 | auto& gui = OUTER(OSDGUI, osdCommand); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/console/OSDGUI.cc:157:14: warning: offset of on non-standard-layout type 'OSDGUI' [-Winvalid-offsetof] 157 | auto& gui = OUTER(OSDGUI, osdCommand); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/console/OSDGUI.cc:168:21: warning: offset of on non-standard-layout type 'OSDGUI' [-Winvalid-offsetof] 168 | const auto& gui = OUTER(OSDGUI, osdCommand); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/console/OSDGUI.cc:254:14: warning: offset of on non-standard-layout type 'OSDGUI' [-Winvalid-offsetof] 254 | auto& gui = OUTER(OSDGUI, osdCommand); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/console/OSDGUI.cc:288:14: warning: offset of on non-standard-layout type 'OSDGUI' [-Winvalid-offsetof] 288 | auto& gui = OUTER(OSDGUI, osdCommand); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/console/OSDGUI.cc:1: In file included from src/console/OSDGUI.hh:4: In file included from src/console/OSDTopWidget.hh:4: In file included from src/console/OSDWidget.hh:4: src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/console/OSDGUI.cc:142:10: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements>' requested here 142 | result.addListElements(widget.getProperties()); | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ 9 warnings generated. Compiling fdc/DriveMultiplexer.cc... Compiling fdc/DummyDisk.cc... Compiling fdc/EmptyDiskPatch.cc... Compiling fdc/MSXFDC.cc... Compiling fdc/MSXtar.cc... Compiling fdc/MicrosolFDC.cc... In file included from src/cpu/MSXCPU.cc:9: src/debugger/Debugger.hh:79:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 79 | [[nodiscard]] Debugger& debugger() { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/cpu/MSXCPU.cc:9: src/debugger/Debugger.hh:80:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 80 | [[nodiscard]] const Debugger& debugger() const { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cpu/MSXCPU.cc:381:20: warning: offset of on non-standard-layout type 'MSXCPU' [-Winvalid-offsetof] 381 | const auto& cpu = OUTER(MSXCPU, timeInfo); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cpu/MSXCPU.cc:442:14: warning: offset of on non-standard-layout type 'MSXCPU' [-Winvalid-offsetof] 442 | auto& cpu = OUTER(MSXCPU, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cpu/MSXCPU.cc:481:14: warning: offset of on non-standard-layout type 'MSXCPU' [-Winvalid-offsetof] 481 | auto& cpu = OUTER(MSXCPU, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 5 warnings generated. Compiling fdc/NowindCommand.cc... Compiling fdc/NowindHost.cc... Compiling fdc/NowindInterface.cc... Compiling fdc/NationalFDC.cc... In file included from src/Reactor.cc:34: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/Reactor.cc:34: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/Reactor.cc:38: src/settings/UserSettings.hh:54:5: warning: offset of on non-standard-layout type 'UserSettings' [-Winvalid-offsetof] 54 | OUTER(UserSettings, userSettingCommand).settings, | ^ ~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/Reactor.cc:1: In file included from src/Reactor.hh:4: In file included from src/settings/EnumSetting.hh:4: In file included from src/settings/Setting.hh:5: src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl *>, (lambda at src/Reactor.hh:133:4)>>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements *>, (lambda at src/Reactor.hh:133:4)>>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/Reactor.cc:869:9: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements> &, (lambda at src/Reactor.hh:133:4)>>' requested here 869 | result.addListElements(reactor.getMachineIDs()); | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/Reactor.cc:1059:10: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements>' requested here 1059 | result.addListElements(Reactor::getHwConfigs(configName)); | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ 5 warnings generated. Compiling fdc/NowindRomDisk.cc... Compiling fdc/PhilipsFDC.cc... Compiling fdc/RamDSKDiskImage.cc... Compiling fdc/RealDrive.cc... Compiling fdc/RawTrack.cc... Compiling fdc/SVIFDC.cc... Compiling fdc/SanyoFDC.cc... Compiling fdc/SectorAccessibleDisk.cc... In file included from src/cassette/CassettePlayer.cc:23: src/cassette/CassettePlayer.hh:132:15: warning: offset of on non-standard-layout type 'CassettePlayer' [-Winvalid-offsetof] 132 | auto& cp = OUTER(CassettePlayer, syncEndOfTape); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/cassette/CassettePlayer.cc:23: src/cassette/CassettePlayer.hh:140:15: warning: offset of on non-standard-layout type 'CassettePlayer' [-Winvalid-offsetof] 140 | auto& cp = OUTER(CassettePlayer, syncAudioEmu); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/cassette/CassettePlayer.cc:33: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/cassette/CassettePlayer.cc:33: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cassette/CassettePlayer.cc:656:25: warning: offset of on non-standard-layout type 'CassettePlayer' [-Winvalid-offsetof] 656 | auto& cassettePlayer = OUTER(CassettePlayer, tapeCommand); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 5 warnings generated. Compiling fdc/SectorBasedDisk.cc... src/commands/GlobalCommandController.cc:445:21: warning: offset of on non-standard-layout type 'GlobalCommandController' [-Winvalid-offsetof] 445 | auto& controller = OUTER(GlobalCommandController, helpCmd); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/commands/GlobalCommandController.cc:486:21: warning: offset of on non-standard-layout type 'GlobalCommandController' [-Winvalid-offsetof] 486 | auto& controller = OUTER(GlobalCommandController, helpCmd); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/commands/GlobalCommandController.cc:505:21: warning: offset of on non-standard-layout type 'GlobalCommandController' [-Winvalid-offsetof] 505 | auto& controller = OUTER(GlobalCommandController, tabCompletionCmd); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/commands/GlobalCommandController.cc:538:27: warning: offset of on non-standard-layout type 'GlobalCommandController' [-Winvalid-offsetof] 538 | const auto& controller = OUTER(GlobalCommandController, updateCmd); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/commands/GlobalCommandController.cc:1: In file included from src/commands/GlobalCommandController.hh:4: In file included from src/commands/CommandController.hh:4: src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/commands/GlobalCommandController.cc:407:12: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements &>' requested here 407 | command.addListElements(tokens); | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/commands/GlobalCommandController.cc:469:12: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements &>>' requested here 469 | command.addListElements(view::drop(tokens, 1)); | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ 6 warnings generated. In file included from src/cpu/MSXWatchIODevice.cc:7: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/cpu/MSXWatchIODevice.cc:7: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. src/config/SettingsConfig.cc:234:25: warning: offset of on non-standard-layout type 'SettingsConfig' [-Winvalid-offsetof] 234 | auto& settingsConfig = OUTER(SettingsConfig, saveSettingsCommand); | ^ ~~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/config/SettingsConfig.cc:275:25: warning: offset of on non-standard-layout type 'SettingsConfig' [-Winvalid-offsetof] 275 | auto& settingsConfig = OUTER(SettingsConfig, loadSettingsCommand); | ^ ~~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. In file included from src/debugger/ProbeBreakPoint.cc:3: src/debugger/Debugger.hh:79:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 79 | [[nodiscard]] Debugger& debugger() { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/debugger/ProbeBreakPoint.cc:3: src/debugger/Debugger.hh:80:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 80 | [[nodiscard]] const Debugger& debugger() const { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/debugger/ProbeBreakPoint.cc:8: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/debugger/ProbeBreakPoint.cc:8: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 4 warnings generated. Compiling fdc/SpectravideoFDC.cc... Compiling fdc/TC8566AF.cc... Compiling fdc/TalentTDC600.cc... Compiling fdc/ToshibaFDC.cc... Compiling fdc/VictorFDC.cc... Compiling fdc/TurboRFDC.cc... Compiling fdc/WD2793.cc... Compiling fdc/WD2793BasedFDC.cc... Compiling fdc/XSADiskImage.cc... Compiling fdc/YamahaFDC.cc... Compiling file/CompressedFileAdapter.cc... Compiling file/File.cc... Compiling file/FileBase.cc... Compiling file/FileContext.cc... Compiling file/FileOperations.cc... Compiling file/FilePool.cc... Compiling file/FilePoolCore.cc... Compiling file/Filename.cc... src/3rdparty/ImGuiFileDialog/ImGuiFileDialog.cc:3261:68: warning: conditional expression between different enumeration types ('ImGuiItemFlagsPrivate_' and 'ImGuiItemFlags_') is deprecated [-Wdeprecated-enum-compare-conditional] 3261 | const bool item_add = ItemAdd(bb, id, NULL, disabled_item ? ImGuiItemFlags_Disabled : ImGuiItemFlags_None); | ^ ~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~ src/3rdparty/ImGuiFileDialog/ImGuiFileDialog.cc:3668:126: warning: bitwise operation between different enumeration types ('ImGuiSelectableFlags_' and 'ImGuiSelectableFlagsPrivate_') is deprecated [-Wdeprecated-enum-enum-conversion] 3668 | if (ImGui::Selectable(infos->fileNameExt.c_str(), &selected, ImGuiSelectableFlags_SpanAllColumns | ImGuiSelectableFlags_SpanAvailWidth)) { | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2 warnings generated. Compiling file/GZFileAdapter.cc... Compiling file/LocalFile.cc... Compiling file/LocalFileReference.cc... Compiling file/PreCacheFile.cc... Compiling file/ZipFileAdapter.cc... In file included from src/fdc/MSXFDC.cc:2: src/fdc/RealDrive.hh:68:18: warning: offset of on non-standard-layout type 'RealDrive' [-Winvalid-offsetof] 68 | auto& drive = OUTER(RealDrive, syncLoadingTimeout); | ^ ~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/fdc/MSXFDC.cc:2: src/fdc/RealDrive.hh:77:18: warning: offset of on non-standard-layout type 'RealDrive' [-Winvalid-offsetof] 77 | auto& drive = OUTER(RealDrive, syncMotorTimeout); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling file/ZlibInflate.cc... Compiling ide/AbstractIDEDevice.cc... In file included from src/cpu/MSXCPUInterface.cc:24: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/cpu/MSXCPUInterface.cc:24: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cpu/MSXCPUInterface.cc:1090:26: warning: offset of on non-standard-layout type 'MSXCPUInterface' [-Winvalid-offsetof] 1090 | const auto& interface = OUTER(MSXCPUInterface, memoryDebug); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cpu/MSXCPUInterface.cc:1097:20: warning: offset of on non-standard-layout type 'MSXCPUInterface' [-Winvalid-offsetof] 1097 | auto& interface = OUTER(MSXCPUInterface, memoryDebug); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cpu/MSXCPUInterface.cc:1113:26: warning: offset of on non-standard-layout type 'MSXCPUInterface' [-Winvalid-offsetof] 1113 | const auto& interface = OUTER(MSXCPUInterface, slottedMemoryDebug); | ^ ~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cpu/MSXCPUInterface.cc:1120:20: warning: offset of on non-standard-layout type 'MSXCPUInterface' [-Winvalid-offsetof] 1120 | auto& interface = OUTER(MSXCPUInterface, slottedMemoryDebug); | ^ ~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cpu/MSXCPUInterface.cc:1151:20: warning: offset of on non-standard-layout type 'MSXCPUInterface' [-Winvalid-offsetof] 1151 | auto& interface = OUTER(MSXCPUInterface, slotInfo); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cpu/MSXCPUInterface.cc:1177:26: warning: offset of on non-standard-layout type 'MSXCPUInterface' [-Winvalid-offsetof] 1177 | const auto& interface = OUTER(MSXCPUInterface, subSlottedInfo); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cpu/MSXCPUInterface.cc:1212:26: warning: offset of on non-standard-layout type 'MSXCPUInterface' [-Winvalid-offsetof] 1212 | const auto& interface = OUTER(MSXCPUInterface, externalSlotInfo); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cpu/MSXCPUInterface.cc:1233:20: warning: offset of on non-standard-layout type 'MSXCPUInterface' [-Winvalid-offsetof] 1233 | auto& interface = OUTER(MSXCPUInterface, ioDebug); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cpu/MSXCPUInterface.cc:1239:20: warning: offset of on non-standard-layout type 'MSXCPUInterface' [-Winvalid-offsetof] 1239 | auto& interface = OUTER(MSXCPUInterface, ioDebug); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cpu/MSXCPUInterface.cc:1264:20: warning: offset of on non-standard-layout type 'MSXCPUInterface' [-Winvalid-offsetof] 1264 | auto& interface = OUTER(MSXCPUInterface, inputPortInfo); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/cpu/MSXCPUInterface.cc:1270:20: warning: offset of on non-standard-layout type 'MSXCPUInterface' [-Winvalid-offsetof] 1270 | auto& interface = OUTER(MSXCPUInterface, outputPortInfo); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 13 warnings generated. Compiling ide/BeerIDE.cc... Compiling ide/CDImageCLI.cc... Compiling ide/DummyIDEDevice.cc... Compiling ide/DummySCSIDevice.cc... Compiling ide/GoudaSCSI.cc... Compiling ide/HD.cc... Compiling ide/HDCommand.cc... Compiling ide/HDImageCLI.cc... src/events/InputEventGenerator.cc:466:30: warning: offset of on non-standard-layout type 'InputEventGenerator' [-Winvalid-offsetof] 466 | auto& inputEventGenerator = OUTER(InputEventGenerator, escapeGrabCmd); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 1 warning generated. Compiling ide/IDECDROM.cc... Compiling ide/IDEDeviceFactory.cc... Compiling ide/IDEHD.cc... Compiling ide/MB89352.cc... Compiling ide/MegaSCSI.cc... Compiling ide/SCSILS120.cc... Compiling ide/SunriseIDE.cc... Compiling ide/SCSIHD.cc... Compiling ide/WD33C93.cc... Compiling imgui/DebuggableEditor.cc... Compiling imgui/ImGuiAdjust.cc... Compiling imgui/ImGuiBitmapViewer.cc... Compiling imgui/ImGuiBreakPoints.cc... Compiling imgui/ImGuiCharacter.cc... Compiling imgui/ImGuiCheatFinder.cc... Compiling imgui/ImGuiConnector.cc... Compiling imgui/ImGuiConsole.cc... Compiling imgui/ImGuiDebugger.cc... Compiling imgui/ImGuiDiskManipulator.cc... Compiling imgui/ImGuiHelp.cc... Compiling imgui/ImGuiKeyboard.cc... Compiling imgui/ImGuiMachine.cc... Compiling imgui/ImGuiManager.cc... Compiling imgui/ImGuiLayer.cc... Compiling imgui/ImGuiMedia.cc... Compiling imgui/ImGuiMessages.cc... Compiling imgui/ImGuiOpenFile.cc... Compiling imgui/ImGuiOsdIcons.cc... Compiling imgui/ImGuiPalette.cc... Compiling imgui/ImGuiReverseBar.cc... In file included from src/debugger/Debugger.cc:1: src/debugger/Debugger.hh:79:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 79 | [[nodiscard]] Debugger& debugger() { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/debugger/Debugger.cc:1: src/debugger/Debugger.hh:80:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 80 | [[nodiscard]] const Debugger& debugger() const { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling imgui/ImGuiSCCViewer.cc... In file included from src/events/AfterCommand.cc:1: In file included from src/events/AfterCommand.hh:5: In file included from src/events/EventListener.hh:4: In file included from src/events/Event.hh:7: src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/events/AfterCommand.cc:236:10: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements &>>' requested here 236 | command.addListElements(view::drop(tokens, 2)); | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ 1 warning generated. Compiling imgui/ImGuiSettings.cc... Compiling imgui/ImGuiSoundChip.cc... Compiling imgui/ImGuiSpriteViewer.cc... Compiling imgui/ImGuiSymbols.cc... Compiling imgui/ImGuiTools.cc... Compiling imgui/ImGuiTrainer.cc... Compiling imgui/ImGuiUtils.cc... Compiling imgui/ImGuiWatchExpr.cc... Compiling imgui/ImGuiVdpRegs.cc... Compiling imgui/ImGuiWaveViewer.cc... Compiling imgui/Shortcuts.cc... Compiling input/ArkanoidPad.cc... src/events/HotKey.cc:591:17: warning: offset of on non-standard-layout type 'HotKey' [-Winvalid-offsetof] 591 | auto& hotKey = OUTER(HotKey, activateCmd); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/events/HotKey.cc:634:17: warning: offset of on non-standard-layout type 'HotKey' [-Winvalid-offsetof] 634 | auto& hotKey = OUTER(HotKey, deactivateCmd); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling input/CircuitDesignerRDDongle.cc... In file included from src/fdc/DiskChanger.cc:21: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/fdc/DiskChanger.cc:21: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling input/ColecoJoystickIO.cc... Compiling input/DummyJoystick.cc... In file included from src/fdc/RealDrive.cc:1: src/fdc/RealDrive.hh:68:18: warning: offset of on non-standard-layout type 'RealDrive' [-Winvalid-offsetof] 68 | auto& drive = OUTER(RealDrive, syncLoadingTimeout); | ^ ~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/fdc/RealDrive.cc:1: src/fdc/RealDrive.hh:77:18: warning: offset of on non-standard-layout type 'RealDrive' [-Winvalid-offsetof] 77 | auto& drive = OUTER(RealDrive, syncMotorTimeout); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/fdc/RealDrive.cc:1: In file included from src/fdc/RealDrive.hh:5: In file included from src/fdc/DiskChanger.hh:6: In file included from src/input/RecordedCommand.hh:7: src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl, (lambda at src/fdc/RealDrive.cc:101:63)>>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements, (lambda at src/fdc/RealDrive.cc:101:63)>>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/fdc/RealDrive.cc:101:11: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements, (lambda at src/fdc/RealDrive.cc:101:63)>>' requested here 101 | patches.addListElements(view::transform(disk->getPatches(), [](auto& p) { | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ 3 warnings generated. Compiling input/EventDelay.cc... Compiling input/JoyMega.cc... src/file/FilePool.cc:174:19: warning: offset of on non-standard-layout type 'FilePool' [-Winvalid-offsetof] 174 | auto& filePool = OUTER(FilePool, sha1SumCommand); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 1 warning generated. Compiling input/JoyTap.cc... Compiling input/JoystickDevice.cc... Compiling input/JoystickManager.cc... Compiling input/JoystickPort.cc... Compiling input/Keyboard.cc... Compiling input/KeyboardSettings.cc... Compiling input/MSXJoystick.cc... Compiling input/MSXEventDistributor.cc... Compiling input/MagicKey.cc... Compiling input/Mouse.cc... Compiling input/MsxChar2Unicode.cc... src/ide/SunriseIDE.cc:241:20: warning: offset of on non-standard-layout type 'SunriseIDE' [-Winvalid-offsetof] 241 | const auto& ide = OUTER(SunriseIDE, romBlockDebug); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 1 warning generated. Compiling input/NinjaTap.cc... Compiling input/Paddle.cc... Compiling input/RecordedCommand.cc... Compiling input/SETetrisDongle.cc... Compiling input/SG1000JoystickIO.cc... Compiling input/StateChangeDistributor.cc... Compiling input/Touchpad.cc... Compiling input/Trackball.cc... Compiling input/UnicodeKeymap.cc... Compiling laserdisc/LaserdiscPlayer.cc... Compiling laserdisc/LaserdiscPlayerCLI.cc... Compiling laserdisc/OggReader.cc... Compiling laserdisc/PioneerLDControl.cc... Compiling laserdisc/yuv2rgb.cc... In file included from src/imgui/ImGuiBitmapViewer.cc:9: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiBitmapViewer.cc:9: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiBitmapViewer.cc:9: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiBitmapViewer.cc:9: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiBitmapViewer.cc:9: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiBitmapViewer.cc:9: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiBitmapViewer.cc:9: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiBitmapViewer.cc:9: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiBitmapViewer.cc:9: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiBitmapViewer.cc:9: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 10 warnings generated. Compiling memory/AmdFlash.cc... Compiling memory/CanonWordProcessor.cc... Compiling memory/Carnivore2.cc... Compiling memory/CheckedRam.cc... Compiling memory/ColecoSuperGameModule.cc... In file included from src/imgui/ImGuiPalette.cc:6: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiPalette.cc:6: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiPalette.cc:6: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiPalette.cc:6: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiPalette.cc:6: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiPalette.cc:6: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiPalette.cc:6: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiPalette.cc:6: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiPalette.cc:6: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiPalette.cc:6: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 10 warnings generated. Compiling memory/EEPROM_93C46.cc... In file included from src/imgui/DebuggableEditor.cc:11: src/debugger/Debugger.hh:79:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 79 | [[nodiscard]] Debugger& debugger() { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/DebuggableEditor.cc:11: src/debugger/Debugger.hh:80:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 80 | [[nodiscard]] const Debugger& debugger() const { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling memory/ESE_SCC.cc... Compiling memory/ESE_RAM.cc... Compiling memory/FraelSwitchableROM.cc... Compiling memory/KonamiUltimateCollection.cc... Compiling memory/MSXHBI55.cc... Compiling memory/MSXMemoryMapper.cc... Compiling memory/MSXMapperIO.cc... Compiling memory/MSXMegaRam.cc... Compiling memory/MSXMemoryMapperBase.cc... Compiling memory/MSXMirrorDevice.cc... Compiling memory/MSXPac.cc... In file included from src/imgui/ImGuiCharacter.cc:10: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiCharacter.cc:10: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiCharacter.cc:10: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiCharacter.cc:10: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiCharacter.cc:10: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiCharacter.cc:10: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiCharacter.cc:10: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiCharacter.cc:10: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiCharacter.cc:10: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiCharacter.cc:10: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 10 warnings generated. Compiling memory/MSXRam.cc... Compiling memory/MSXRom.cc... Compiling memory/MSXRomCLI.cc... Compiling memory/MegaFlashRomSCCPlus.cc... Compiling memory/MegaFlashRomSCCPlusSD.cc... Compiling memory/MusicalMemoryMapper.cc... Compiling memory/PanasonicMemory.cc... In file included from src/imgui/ImGuiSpriteViewer.cc:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiSpriteViewer.cc:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiSpriteViewer.cc:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiSpriteViewer.cc:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiSpriteViewer.cc:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiSpriteViewer.cc:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiSpriteViewer.cc:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiSpriteViewer.cc:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiSpriteViewer.cc:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiSpriteViewer.cc:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 10 warnings generated. Compiling memory/PanasonicRam.cc... Compiling memory/ROMHunterMk2.cc... Compiling memory/Ram.cc... Compiling memory/ReproCartridgeV1.cc... Compiling memory/ReproCartridgeV2.cc... Compiling memory/Rom.cc... Compiling memory/RomAlAlamiah30in1.cc... In file included from src/input/ArkanoidPad.cc:6: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/input/ArkanoidPad.cc:6: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. In file included from src/imgui/ImGuiVdpRegs.cc:6: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiVdpRegs.cc:6: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiVdpRegs.cc:6: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiVdpRegs.cc:6: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiVdpRegs.cc:6: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiVdpRegs.cc:6: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiVdpRegs.cc:6: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiVdpRegs.cc:6: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiVdpRegs.cc:6: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiVdpRegs.cc:6: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 10 warnings generated. Compiling memory/RomAscii16X.cc... Compiling memory/RomAscii16_2.cc... Compiling memory/RomArc.cc... In file included from src/input/StateChangeDistributor.cc:1: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/input/StateChangeDistributor.cc:1: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling memory/RomAscii16kB.cc... Compiling memory/RomAscii8_8.cc... Compiling memory/RomAscii8kB.cc... In file included from src/imgui/ImGuiReverseBar.cc:11: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiReverseBar.cc:11: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. In file included from src/imgui/ImGuiBreakPoints.cc:10: src/debugger/Debugger.hh:79:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 79 | [[nodiscard]] Debugger& debugger() { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiBreakPoints.cc:10: src/debugger/Debugger.hh:80:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 80 | [[nodiscard]] const Debugger& debugger() const { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling memory/RomBlocks.cc... Compiling memory/RomColecoMegaCart.cc... In file included from src/input/RecordedCommand.cc:2: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/input/RecordedCommand.cc:2: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling memory/RomCrossBlaim.cc... Compiling memory/RomDatabase.cc... Compiling memory/RomDRAM.cc... Compiling memory/RomDooly.cc... Compiling memory/RomFSA1FM.cc... Compiling memory/RomFactory.cc... In file included from src/input/EventDelay.cc:7: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/input/EventDelay.cc:7: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. In file included from src/imgui/ImGuiMachine.cc:6: In file included from src/imgui/ImGuiMedia.hh:9: src/fdc/RealDrive.hh:68:18: warning: offset of on non-standard-layout type 'RealDrive' [-Winvalid-offsetof] 68 | auto& drive = OUTER(RealDrive, syncLoadingTimeout); | ^ ~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiMachine.cc:6: In file included from src/imgui/ImGuiMedia.hh:9: src/fdc/RealDrive.hh:77:18: warning: offset of on non-standard-layout type 'RealDrive' [-Winvalid-offsetof] 77 | auto& drive = OUTER(RealDrive, syncMotorTimeout); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiMachine.cc:12: src/debugger/Debugger.hh:79:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 79 | [[nodiscard]] Debugger& debugger() { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiMachine.cc:12: src/debugger/Debugger.hh:80:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 80 | [[nodiscard]] const Debugger& debugger() const { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiMachine.cc:18: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiMachine.cc:18: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiMachine.cc:18: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiMachine.cc:18: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiMachine.cc:18: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiMachine.cc:18: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiMachine.cc:18: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiMachine.cc:18: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiMachine.cc:18: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiMachine.cc:18: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 14 warnings generated. Compiling memory/RomGeneric16kB.cc... In file included from src/input/JoyMega.cc:9: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/input/JoyMega.cc:9: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling memory/RomGameMaster2.cc... Compiling memory/RomGeneric8kB.cc... In file included from src/input/Paddle.cc:3: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/input/Paddle.cc:3: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. In file included from src/input/Mouse.cc:3: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/input/Mouse.cc:3: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. In file included from src/input/MSXJoystick.cc:9: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/input/MSXJoystick.cc:9: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. src/memory/MSXMemoryMapperBase.cc:119:17: warning: offset of on non-standard-layout type 'MSXMemoryMapperBase' [-Winvalid-offsetof] 119 | auto& mapper = OUTER(MSXMemoryMapperBase, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/memory/MSXMemoryMapperBase.cc:125:17: warning: offset of on non-standard-layout type 'MSXMemoryMapperBase' [-Winvalid-offsetof] 125 | auto& mapper = OUTER(MSXMemoryMapperBase, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling memory/RomHalnote.cc... Compiling memory/RomHarryFox.cc... Compiling memory/RomHolyQuran.cc... Compiling memory/RomHolyQuran2.cc... Compiling memory/RomInfo.cc... Compiling memory/RomInfoTopic.cc... src/memory/MSXMapperIO.cc:117:19: warning: offset of on non-standard-layout type 'MSXMapperIO' [-Winvalid-offsetof] 117 | auto& mapperIO = OUTER(MSXMapperIO, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/memory/MSXMapperIO.cc:124:19: warning: offset of on non-standard-layout type 'MSXMapperIO' [-Winvalid-offsetof] 124 | auto& mapperIO = OUTER(MSXMapperIO, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling memory/RomKonami.cc... Compiling memory/RomKonamiKeyboardMaster.cc... Compiling memory/RomKonamiSCC.cc... Compiling memory/RomMSXDOS2.cc... Compiling memory/RomMSXtra.cc... Compiling memory/RomMSXWrite.cc... Compiling memory/RomMajutsushi.cc... Compiling memory/RomManbow2.cc... Compiling memory/RomMatraCompilation.cc... Compiling memory/RomMatraInk.cc... Compiling memory/RomMitsubishiMLTS2.cc... Compiling memory/RomMultiRom.cc... Compiling memory/RomNational.cc... In file included from src/imgui/ImGuiDebugger.cc:18: src/debugger/Debugger.hh:79:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 79 | [[nodiscard]] Debugger& debugger() { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiDebugger.cc:18: src/debugger/Debugger.hh:80:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 80 | [[nodiscard]] const Debugger& debugger() const { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling memory/RomNeo16.cc... In file included from src/imgui/ImGuiDiskManipulator.cc:6: In file included from src/imgui/ImGuiMedia.hh:9: src/fdc/RealDrive.hh:68:18: warning: offset of on non-standard-layout type 'RealDrive' [-Winvalid-offsetof] 68 | auto& drive = OUTER(RealDrive, syncLoadingTimeout); | ^ ~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiDiskManipulator.cc:6: In file included from src/imgui/ImGuiMedia.hh:9: src/fdc/RealDrive.hh:77:18: warning: offset of on non-standard-layout type 'RealDrive' [-Winvalid-offsetof] 77 | auto& drive = OUTER(RealDrive, syncMotorTimeout); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling memory/RomPadial16kB.cc... Compiling memory/RomPadial8kB.cc... Compiling memory/RomPageNN.cc... Compiling memory/RomNeo8.cc... Compiling memory/RomNettouYakyuu.cc... Compiling memory/RomPanasonic.cc... In file included from src/input/Touchpad.cc:10: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/input/Touchpad.cc:10: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling memory/RomPlayBall.cc... Compiling memory/RomRType.cc... Compiling memory/RomPlain.cc... In file included from src/laserdisc/PioneerLDControl.cc:1: In file included from src/laserdisc/PioneerLDControl.hh:4: src/laserdisc/LaserdiscPlayer.hh:127:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 127 | auto& player = OUTER(LaserdiscPlayer, syncAck); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/PioneerLDControl.cc:1: In file included from src/laserdisc/PioneerLDControl.hh:4: src/laserdisc/LaserdiscPlayer.hh:135:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 135 | auto& player = OUTER(LaserdiscPlayer, syncOdd); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/PioneerLDControl.cc:1: In file included from src/laserdisc/PioneerLDControl.hh:4: src/laserdisc/LaserdiscPlayer.hh:143:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 143 | auto& player = OUTER(LaserdiscPlayer, syncEven); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/PioneerLDControl.cc:6: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/PioneerLDControl.cc:6: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/PioneerLDControl.cc:6: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/PioneerLDControl.cc:6: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/PioneerLDControl.cc:6: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/PioneerLDControl.cc:6: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/PioneerLDControl.cc:6: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/PioneerLDControl.cc:6: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/PioneerLDControl.cc:6: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/PioneerLDControl.cc:6: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 13 warnings generated. Compiling memory/RomRamFile.cc... src/memory/RomAscii16X.cc:84:16: warning: offset of on non-standard-layout type 'RomAscii16X' [-Winvalid-offsetof] 84 | auto& outer = OUTER(RomAscii16X, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/memory/RomAscii16X.cc:92:16: warning: offset of on non-standard-layout type 'RomAscii16X' [-Winvalid-offsetof] 92 | auto& outer = OUTER(RomAscii16X, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling memory/RomRetroHard31in1.cc... Compiling memory/RomSuperLodeRunner.cc... Compiling memory/RomSuperSwangi.cc... In file included from src/imgui/ImGuiManager.cc:15: In file included from src/imgui/ImGuiMedia.hh:9: src/fdc/RealDrive.hh:68:18: warning: offset of on non-standard-layout type 'RealDrive' [-Winvalid-offsetof] 68 | auto& drive = OUTER(RealDrive, syncLoadingTimeout); | ^ ~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiManager.cc:15: In file included from src/imgui/ImGuiMedia.hh:9: src/fdc/RealDrive.hh:77:18: warning: offset of on non-standard-layout type 'RealDrive' [-Winvalid-offsetof] 77 | auto& drive = OUTER(RealDrive, syncMotorTimeout); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiManager.cc:48: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiManager.cc:48: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiManager.cc:48: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiManager.cc:48: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiManager.cc:48: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiManager.cc:48: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiManager.cc:48: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiManager.cc:48: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiManager.cc:48: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiManager.cc:48: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 12 warnings generated. Compiling memory/RomSynthesizer.cc... Compiling memory/RomZemina126in1.cc... Compiling memory/RomZemina25in1.cc... Compiling memory/RomZemina80in1.cc... In file included from src/input/Trackball.cc:3: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/input/Trackball.cc:3: In file included from src/input/StateChangeDistributor.hh:5: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling memory/RomZemina90in1.cc... Compiling memory/SRAM.cc... Compiling memory/SdCard.cc... Compiling memory/TrackedRam.cc... Compiling security/SocketStreamWrapper.cc... Compiling security/SspiNegotiateServer.cc... Compiling security/SspiUtils.cc... Compiling serial/ClockPin.cc... In file included from src/imgui/ImGuiMedia.cc:1: In file included from src/imgui/ImGuiMedia.hh:9: src/fdc/RealDrive.hh:68:18: warning: offset of on non-standard-layout type 'RealDrive' [-Winvalid-offsetof] 68 | auto& drive = OUTER(RealDrive, syncLoadingTimeout); | ^ ~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/imgui/ImGuiMedia.cc:1: In file included from src/imgui/ImGuiMedia.hh:9: src/fdc/RealDrive.hh:77:18: warning: offset of on non-standard-layout type 'RealDrive' [-Winvalid-offsetof] 77 | auto& drive = OUTER(RealDrive, syncMotorTimeout); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling serial/DummyMidiInDevice.cc... Compiling serial/DummyRS232Device.cc... Compiling serial/DummyMidiOutDevice.cc... Compiling serial/I8251.cc... In file included from src/laserdisc/LaserdiscPlayer.cc:1: src/laserdisc/LaserdiscPlayer.hh:127:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 127 | auto& player = OUTER(LaserdiscPlayer, syncAck); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/LaserdiscPlayer.cc:1: src/laserdisc/LaserdiscPlayer.hh:135:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 135 | auto& player = OUTER(LaserdiscPlayer, syncOdd); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/LaserdiscPlayer.cc:1: src/laserdisc/LaserdiscPlayer.hh:143:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 143 | auto& player = OUTER(LaserdiscPlayer, syncEven); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/LaserdiscPlayer.cc:14: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/laserdisc/LaserdiscPlayer.cc:14: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/laserdisc/LaserdiscPlayer.cc:50:26: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 50 | auto& laserdiscPlayer = OUTER(LaserdiscPlayer, laserdiscCommand); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 6 warnings generated. Compiling serial/I8254.cc... Compiling serial/JVCMSXMIDI.cc... Compiling serial/MC6850.cc... In file included from src/memory/RomInfoTopic.cc:3: src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/memory/RomInfoTopic.cc:17:10: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements &, std::string_view openmsx::RomInfo::RomTypeInfo::*>>' requested here 17 | result.addListElements(RomInfo::getAllRomTypes()); | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ 1 warning generated. Compiling serial/MSXFacMidiInterface.cc... Compiling serial/MSXMidi.cc... Compiling serial/MSXModem.cc... Compiling serial/MSXRS232.cc... Compiling serial/MidiInCoreMIDI.cc... Compiling serial/MidiInDevice.cc... In file included from src/memory/Rom.cc:5: src/debugger/Debugger.hh:79:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 79 | [[nodiscard]] Debugger& debugger() { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/memory/Rom.cc:5: src/debugger/Debugger.hh:80:59: warning: offset of on non-standard-layout type 'Debugger' [-Winvalid-offsetof] 80 | [[nodiscard]] const Debugger& debugger() const { return OUTER(Debugger, cmd); } | ^ ~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling serial/MidiInConnector.cc... src/memory/RomHolyQuran2.cc:137:17: warning: offset of on non-standard-layout type 'RomHolyQuran2' [-Winvalid-offsetof] 137 | auto& device = OUTER(RomHolyQuran2, romBlocks); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 1 warning generated. Compiling serial/MidiInReader.cc... Compiling serial/MidiOutConnector.cc... Compiling serial/MidiOutCoreMIDI.cc... Compiling serial/MidiInWindows.cc... Compiling serial/MidiOutDevice.cc... Compiling serial/MidiOutLogger.cc... Compiling serial/MidiOutWindows.cc... Compiling serial/Midi_w32.cc... Compiling serial/MusicModuleMIDI.cc... Compiling serial/RS232Connector.cc... Compiling serial/RS232Device.cc... Compiling serial/RS232Net.cc... Compiling serial/RS232Tester.cc... Compiling serial/YM2148.cc... Compiling settings/BooleanSetting.cc... Compiling settings/EnumSetting.cc... Compiling settings/FilenameSetting.cc... Compiling settings/FloatSetting.cc... Compiling settings/KeyCodeSetting.cc... Compiling settings/IntegerSetting.cc... Compiling settings/ProxySetting.cc... Compiling settings/Setting.cc... Compiling settings/ReadOnlySetting.cc... Compiling settings/SettingsManager.cc... Compiling settings/StringSetting.cc... Compiling settings/UserSettings.cc... Compiling settings/VideoSourceSetting.cc... Compiling sound/AY8910.cc... Compiling sound/AY8910Periphery.cc... Compiling sound/AudioInputConnector.cc... Compiling sound/BlipBuffer.cc... Compiling sound/AudioInputDevice.cc... Compiling sound/DACSound16S.cc... Compiling sound/DACSound8U.cc... Compiling sound/DummyAudioInputDevice.cc... Compiling sound/DummyY8950KeyboardDevice.cc... Compiling sound/EmuTimer.cc... Compiling sound/KeyClick.cc... Compiling sound/MSXAudio.cc... Compiling sound/MSXFmPac.cc... Compiling sound/MSXMixer.cc... Compiling sound/MSXMoonSound.cc... Compiling sound/MSXMusic.cc... Compiling sound/MSXOPL3Cartridge.cc... Compiling sound/MSXPSG.cc... Compiling sound/MSXTurboRPCM.cc... Compiling sound/MSXSCCPlusCart.cc... Compiling sound/MSXYamahaSFG.cc... In file included from src/input/Keyboard.cc:11: src/ReverseManager.hh:130:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 130 | auto& rm = OUTER(ReverseManager, syncNewSnapshot); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/input/Keyboard.cc:11: src/ReverseManager.hh:138:15: warning: offset of on non-standard-layout type 'ReverseManager' [-Winvalid-offsetof] 138 | auto& rm = OUTER(ReverseManager, syncInputEvent); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/input/Keyboard.cc:1557:19: warning: offset of on non-standard-layout type 'Keyboard' [-Winvalid-offsetof] 1557 | auto& keyboard = OUTER(Keyboard, keyMatrixUpCmd); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/input/Keyboard.cc:1581:19: warning: offset of on non-standard-layout type 'Keyboard' [-Winvalid-offsetof] 1581 | auto& keyboard = OUTER(Keyboard, keyMatrixDownCmd); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/input/Keyboard.cc:1620:19: warning: offset of on non-standard-layout type 'Keyboard' [-Winvalid-offsetof] 1620 | auto& keyboard = OUTER(Keyboard, msxKeyEventQueue); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/input/Keyboard.cc:1705:25: warning: offset of on non-standard-layout type 'Keyboard' [-Winvalid-offsetof] 1705 | const auto& keyboard = OUTER(Keyboard, keyTypeCmd); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/input/Keyboard.cc:1715:19: warning: offset of on non-standard-layout type 'Keyboard' [-Winvalid-offsetof] 1715 | auto& keyboard = OUTER(Keyboard, keyTypeCmd); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/input/Keyboard.cc:1785:25: warning: offset of on non-standard-layout type 'Keyboard' [-Winvalid-offsetof] 1785 | const auto& keyboard = OUTER(Keyboard, msxcode2UnicodeCmd); | ^ ~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/input/Keyboard.cc:1835:25: warning: offset of on non-standard-layout type 'Keyboard' [-Winvalid-offsetof] 1835 | const auto& keyboard = OUTER(Keyboard, unicode2MsxcodeCmd); | ^ ~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/input/Keyboard.cc:1940:21: warning: offset of on non-standard-layout type 'Keyboard' [-Winvalid-offsetof] 1940 | auto& keyboard = OUTER(Keyboard, capsLockAligner); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/input/Keyboard.cc:1964:19: warning: offset of on non-standard-layout type 'Keyboard' [-Winvalid-offsetof] 1964 | auto& keyboard = OUTER(Keyboard, capsLockAligner); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/input/Keyboard.cc:1990:25: warning: offset of on non-standard-layout type 'Keyboard' [-Winvalid-offsetof] 1990 | const auto& keyboard = OUTER(Keyboard, keybDebuggable); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 12 warnings generated. Compiling sound/Mixer.cc... Compiling sound/NullSoundDriver.cc... Compiling sound/ResampleBlip.cc... Compiling sound/ResampleHQ.cc... Compiling sound/ResampleLQ.cc... Compiling sound/ResampleTrivial.cc... In file included from src/serial/MSXFacMidiInterface.cc:1: In file included from src/serial/MSXFacMidiInterface.hh:7: src/serial/I8251.hh:75:18: warning: offset of on non-standard-layout type 'I8251' [-Winvalid-offsetof] 75 | auto& i8251 = OUTER(I8251, syncRecv); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/serial/MSXFacMidiInterface.cc:1: In file included from src/serial/MSXFacMidiInterface.hh:7: src/serial/I8251.hh:83:18: warning: offset of on non-standard-layout type 'I8251' [-Winvalid-offsetof] 83 | auto& i8251 = OUTER(I8251, syncTrans); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXFacMidiInterface.cc:70:15: warning: offset of on non-standard-layout type 'MSXFacMidiInterface' [-Winvalid-offsetof] 70 | auto& midi = OUTER(MSXFacMidiInterface, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXFacMidiInterface.cc:76:15: warning: offset of on non-standard-layout type 'MSXFacMidiInterface' [-Winvalid-offsetof] 76 | auto& midi = OUTER(MSXFacMidiInterface, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXFacMidiInterface.cc:82:15: warning: offset of on non-standard-layout type 'MSXFacMidiInterface' [-Winvalid-offsetof] 82 | auto& midi = OUTER(MSXFacMidiInterface, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXFacMidiInterface.cc:88:15: warning: offset of on non-standard-layout type 'MSXFacMidiInterface' [-Winvalid-offsetof] 88 | auto& midi = OUTER(MSXFacMidiInterface, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXFacMidiInterface.cc:94:21: warning: offset of on non-standard-layout type 'MSXFacMidiInterface' [-Winvalid-offsetof] 94 | const auto& midi = OUTER(MSXFacMidiInterface, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 7 warnings generated. Compiling sound/ResampledSoundDevice.cc... Compiling sound/SCC.cc... Compiling sound/SN76489.cc... Compiling sound/SDLSoundDriver.cc... src/memory/SRAM.cc:93:4: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 93 | VLA(char, buf, length); | ^~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/memory/SRAM.cc:93:4: note: read of non-const variable 'length' is not allowed in a constant expression src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/memory/SRAM.cc:92:11: note: declared here 92 | size_t length = strlen(header); | ^ 1 warning generated. In file included from src/serial/JVCMSXMIDI.cc:1: In file included from src/serial/JVCMSXMIDI.hh:5: src/serial/MC6850.hh:48:19: warning: offset of on non-standard-layout type 'MC6850' [-Winvalid-offsetof] 48 | auto& mc6850 = OUTER(MC6850, syncRecv); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/serial/JVCMSXMIDI.cc:1: In file included from src/serial/JVCMSXMIDI.hh:5: src/serial/MC6850.hh:56:19: warning: offset of on non-standard-layout type 'MC6850' [-Winvalid-offsetof] 56 | auto& mc6850 = OUTER(MC6850, syncTrans); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling sound/SNPSG.cc... Compiling sound/SVIPSG.cc... Compiling sound/SamplePlayer.cc... Compiling sound/SoundDevice.cc... Compiling sound/VLM5030.cc... Compiling sound/WavAudioInput.cc... Compiling sound/WavWriter.cc... Compiling sound/Y8950.cc... Compiling sound/Y8950Adpcm.cc... In file included from src/serial/MSXRS232.cc:1: In file included from src/serial/MSXRS232.hh:4: src/serial/I8251.hh:75:18: warning: offset of on non-standard-layout type 'I8251' [-Winvalid-offsetof] 75 | auto& i8251 = OUTER(I8251, syncRecv); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/serial/MSXRS232.cc:1: In file included from src/serial/MSXRS232.hh:4: src/serial/I8251.hh:83:18: warning: offset of on non-standard-layout type 'I8251' [-Winvalid-offsetof] 83 | auto& i8251 = OUTER(I8251, syncTrans); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXRS232.cc:291:16: warning: offset of on non-standard-layout type 'MSXRS232' [-Winvalid-offsetof] 291 | auto& rs232 = OUTER(MSXRS232, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXRS232.cc:297:22: warning: offset of on non-standard-layout type 'MSXRS232' [-Winvalid-offsetof] 297 | const auto& rs232 = OUTER(MSXRS232, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXRS232.cc:303:22: warning: offset of on non-standard-layout type 'MSXRS232' [-Winvalid-offsetof] 303 | const auto& rs232 = OUTER(MSXRS232, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXRS232.cc:309:22: warning: offset of on non-standard-layout type 'MSXRS232' [-Winvalid-offsetof] 309 | const auto& rs232 = OUTER(MSXRS232, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXRS232.cc:315:22: warning: offset of on non-standard-layout type 'MSXRS232' [-Winvalid-offsetof] 315 | const auto& rs232 = OUTER(MSXRS232, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXRS232.cc:321:22: warning: offset of on non-standard-layout type 'MSXRS232' [-Winvalid-offsetof] 321 | const auto& rs232 = OUTER(MSXRS232, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXRS232.cc:327:22: warning: offset of on non-standard-layout type 'MSXRS232' [-Winvalid-offsetof] 327 | const auto& rs232 = OUTER(MSXRS232, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXRS232.cc:333:22: warning: offset of on non-standard-layout type 'MSXRS232' [-Winvalid-offsetof] 333 | const auto& rs232 = OUTER(MSXRS232, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXRS232.cc:339:22: warning: offset of on non-standard-layout type 'MSXRS232' [-Winvalid-offsetof] 339 | const auto& rs232 = OUTER(MSXRS232, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXRS232.cc:345:22: warning: offset of on non-standard-layout type 'MSXRS232' [-Winvalid-offsetof] 345 | const auto& rs232 = OUTER(MSXRS232, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXRS232.cc:354:16: warning: offset of on non-standard-layout type 'MSXRS232' [-Winvalid-offsetof] 354 | auto& rs232 = OUTER(MSXRS232, cntr0); | ^ ~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXRS232.cc:374:16: warning: offset of on non-standard-layout type 'MSXRS232' [-Winvalid-offsetof] 374 | auto& rs232 = OUTER(MSXRS232, cntr1); | ^ ~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 14 warnings generated. Compiling sound/Y8950KeyboardConnector.cc... Compiling sound/Y8950KeyboardDevice.cc... Compiling sound/Y8950Periphery.cc... Compiling sound/YM2151.cc... Compiling sound/YM2413.cc... Compiling sound/YM2413Burczynski.cc... In file included from src/settings/EnumSetting.cc:1: In file included from src/settings/EnumSetting.hh:4: In file included from src/settings/Setting.hh:5: src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl, (lambda at src/settings/EnumSetting.hh:37:4)>>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements, (lambda at src/settings/EnumSetting.hh:37:4)>>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/settings/EnumSetting.cc:37:12: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements &, (lambda at src/settings/EnumSetting.hh:37:4)>>' requested here 37 | valueList.addListElements(getPossibleValues()); | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ 1 warning generated. Compiling sound/YM2413NukeYKT.cc... In file included from src/serial/I8251.cc:1: src/serial/I8251.hh:75:18: warning: offset of on non-standard-layout type 'I8251' [-Winvalid-offsetof] 75 | auto& i8251 = OUTER(I8251, syncRecv); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/serial/I8251.cc:1: src/serial/I8251.hh:83:18: warning: offset of on non-standard-layout type 'I8251' [-Winvalid-offsetof] 83 | auto& i8251 = OUTER(I8251, syncTrans); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. In file included from src/serial/MC6850.cc:1: src/serial/MC6850.hh:48:19: warning: offset of on non-standard-layout type 'MC6850' [-Winvalid-offsetof] 48 | auto& mc6850 = OUTER(MC6850, syncRecv); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/serial/MC6850.cc:1: src/serial/MC6850.hh:56:19: warning: offset of on non-standard-layout type 'MC6850' [-Winvalid-offsetof] 56 | auto& mc6850 = OUTER(MC6850, syncTrans); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. In file included from src/serial/MSXMidi.cc:1: In file included from src/serial/MSXMidi.hh:8: src/serial/I8251.hh:75:18: warning: offset of on non-standard-layout type 'I8251' [-Winvalid-offsetof] 75 | auto& i8251 = OUTER(I8251, syncRecv); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/serial/MSXMidi.cc:1: In file included from src/serial/MSXMidi.hh:8: src/serial/I8251.hh:83:18: warning: offset of on non-standard-layout type 'I8251' [-Winvalid-offsetof] 83 | auto& i8251 = OUTER(I8251, syncTrans); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXMidi.cc:266:15: warning: offset of on non-standard-layout type 'MSXMidi' [-Winvalid-offsetof] 266 | auto& midi = OUTER(MSXMidi, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXMidi.cc:272:15: warning: offset of on non-standard-layout type 'MSXMidi' [-Winvalid-offsetof] 272 | auto& midi = OUTER(MSXMidi, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXMidi.cc:278:15: warning: offset of on non-standard-layout type 'MSXMidi' [-Winvalid-offsetof] 278 | auto& midi = OUTER(MSXMidi, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXMidi.cc:284:21: warning: offset of on non-standard-layout type 'MSXMidi' [-Winvalid-offsetof] 284 | const auto& midi = OUTER(MSXMidi, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXMidi.cc:295:15: warning: offset of on non-standard-layout type 'MSXMidi' [-Winvalid-offsetof] 295 | auto& midi = OUTER(MSXMidi, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXMidi.cc:301:15: warning: offset of on non-standard-layout type 'MSXMidi' [-Winvalid-offsetof] 301 | auto& midi = OUTER(MSXMidi, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXMidi.cc:307:15: warning: offset of on non-standard-layout type 'MSXMidi' [-Winvalid-offsetof] 307 | auto& midi = OUTER(MSXMidi, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXMidi.cc:313:15: warning: offset of on non-standard-layout type 'MSXMidi' [-Winvalid-offsetof] 313 | auto& midi = OUTER(MSXMidi, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXMidi.cc:319:21: warning: offset of on non-standard-layout type 'MSXMidi' [-Winvalid-offsetof] 319 | const auto& midi = OUTER(MSXMidi, interface); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXMidi.cc:328:15: warning: offset of on non-standard-layout type 'MSXMidi' [-Winvalid-offsetof] 328 | auto& midi = OUTER(MSXMidi, cntr0); | ^ ~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXMidi.cc:348:15: warning: offset of on non-standard-layout type 'MSXMidi' [-Winvalid-offsetof] 348 | auto& midi = OUTER(MSXMidi, cntr2); | ^ ~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/serial/MSXMidi.cc:360:15: warning: offset of on non-standard-layout type 'MSXMidi' [-Winvalid-offsetof] 360 | auto& midi = OUTER(MSXMidi, cntr2); | ^ ~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 14 warnings generated. Compiling sound/YM2413Okazaki.cc... Compiling sound/YM2413OriginalNukeYKT.cc... Compiling sound/YMF262.cc... In file included from src/serial/MusicModuleMIDI.cc:1: In file included from src/serial/MusicModuleMIDI.hh:5: src/serial/MC6850.hh:48:19: warning: offset of on non-standard-layout type 'MC6850' [-Winvalid-offsetof] 48 | auto& mc6850 = OUTER(MC6850, syncRecv); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/serial/MusicModuleMIDI.cc:1: In file included from src/serial/MusicModuleMIDI.hh:5: src/serial/MC6850.hh:56:19: warning: offset of on non-standard-layout type 'MC6850' [-Winvalid-offsetof] 56 | auto& mc6850 = OUTER(MC6850, syncTrans); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. In file included from src/settings/VideoSourceSetting.cc:1: In file included from src/settings/VideoSourceSetting.hh:4: In file included from src/settings/Setting.hh:5: src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/settings/VideoSourceSetting.cc:90:12: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements>' requested here 90 | valueList.addListElements(getPossibleValues()); | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ 1 warning generated. Compiling sound/YMF278.cc... Compiling sound/opll.cc... Compiling thread/Thread.cc... Compiling thread/Timer.cc... Compiling utils/Base64.cc... Compiling utils/Date.cc... Compiling utils/DeltaBlock.cc... Compiling utils/DivModBySame.cc... Compiling utils/HexDump.cc... In file included from src/serial/YM2148.cc:4: src/serial/YM2148.hh:48:19: warning: offset of on non-standard-layout type 'YM2148' [-Winvalid-offsetof] 48 | auto& ym2148 = OUTER(YM2148, syncRecv); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/serial/YM2148.cc:4: src/serial/YM2148.hh:56:19: warning: offset of on non-standard-layout type 'YM2148' [-Winvalid-offsetof] 56 | auto& ym2148 = OUTER(YM2148, syncTrans); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling utils/MemoryOps.cc... Compiling utils/Poller.cc... Compiling utils/SerializeBuffer.cc... src/sound/ResampleBlip.cc:38:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 38 | VLA_SSE_ALIGNED(float, buf, len); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~~~ src/sound/ResampleBlip.cc:109:16: note: in instantiation of member function 'openmsx::ResampleBlip<1>::generateOutputImpl' requested here 109 | template class ResampleBlip<1>; | ^ src/sound/ResampleBlip.cc:38:3: note: initializer of 'len' is not a constant expression 38 | VLA_SSE_ALIGNED(float, buf, len); | ^ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^ src/sound/ResampleBlip.cc:37:18: note: declared here 37 | const unsigned len = emuNum * CHANNELS + std::max(3u, CHANNELS); | ^ src/sound/ResampleBlip.cc:38:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 38 | VLA_SSE_ALIGNED(float, buf, len); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~~~ src/sound/ResampleBlip.cc:110:16: note: in instantiation of member function 'openmsx::ResampleBlip<2>::generateOutputImpl' requested here 110 | template class ResampleBlip<2>; | ^ src/sound/ResampleBlip.cc:38:3: note: initializer of 'len' is not a constant expression 38 | VLA_SSE_ALIGNED(float, buf, len); | ^ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^ src/sound/ResampleBlip.cc:37:18: note: declared here 37 | const unsigned len = emuNum * CHANNELS + std::max(3u, CHANNELS); | ^ 2 warnings generated. Compiling utils/StringOp.cc... Compiling utils/TigerTree.cc... Compiling utils/lz4.cc... Compiling utils/sha1.cc... Compiling utils/tiger.cc... Compiling utils/utf8_checked.cc... Compiling utils/win32-arggen.cc... Compiling video/ADVram.cc... Compiling video/AviRecorder.cc... Compiling video/BitmapConverter.cc... Compiling video/CharacterConverter.cc... Compiling video/AviWriter.cc... Compiling utils/win32-dirent.cc... src/sound/ResampleHQ.cc:637:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 637 | VLA_SSE_ALIGNED(float, tmpBufExtra, emuNum * CHANNELS + 3); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~~~ src/sound/ResampleHQ.cc:688:16: note: in instantiation of member function 'openmsx::ResampleHQ<1>::prepareData' requested here 688 | template class ResampleHQ<1>; | ^ src/sound/ResampleHQ.cc:637:38: note: function parameter 'emuNum' with unknown value cannot be used in a constant expression 637 | VLA_SSE_ALIGNED(float, tmpBufExtra, emuNum * CHANNELS + 3); | ^ src/sound/ResampleHQ.hh:34:28: note: declared here 34 | void prepareData(unsigned emuNum); | ^ src/sound/ResampleHQ.cc:637:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 637 | VLA_SSE_ALIGNED(float, tmpBufExtra, emuNum * CHANNELS + 3); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~~~ src/sound/ResampleHQ.cc:689:16: note: in instantiation of member function 'openmsx::ResampleHQ<2>::prepareData' requested here 689 | template class ResampleHQ<2>; | ^ src/sound/ResampleHQ.cc:637:38: note: function parameter 'emuNum' with unknown value cannot be used in a constant expression 637 | VLA_SSE_ALIGNED(float, tmpBufExtra, emuNum * CHANNELS + 3); | ^ src/sound/ResampleHQ.hh:34:28: note: declared here 34 | void prepareData(unsigned emuNum); | ^ 2 warnings generated. src/sound/AY8910.cc:998:17: warning: offset of on non-standard-layout type 'AY8910' [-Winvalid-offsetof] 998 | auto& ay8910 = OUTER(AY8910, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/sound/AY8910.cc:1004:17: warning: offset of on non-standard-layout type 'AY8910' [-Winvalid-offsetof] 1004 | auto& ay8910 = OUTER(AY8910, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling video/Deflicker.cc... Compiling video/DeinterlacedFrame.cc... Compiling video/Display.cc... Compiling video/DoubledFrame.cc... Compiling video/DummyRenderer.cc... Compiling video/DummyVideoSystem.cc... Compiling video/FrameSource.cc... src/settings/SettingsManager.cc:67:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 67 | VLA(char, fullname, size); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/settings/SettingsManager.cc:67:2: note: read of non-const variable 'size' is not allowed in a constant expression src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/settings/SettingsManager.cc:66:7: note: declared here 66 | auto size = prefix.size() + baseName.size(); | ^ src/settings/SettingsManager.cc:129:18: warning: offset of on non-standard-layout type 'SettingsManager' [-Winvalid-offsetof] 129 | auto& manager = OUTER(SettingsManager, settingInfo); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/settings/SettingsManager.cc:167:25: warning: offset of on non-standard-layout type 'SettingsManager' [-Winvalid-offsetof] 167 | const auto& manager = OUTER(SettingsManager, settingInfo); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/settings/SettingsManager.cc:184:25: warning: offset of on non-standard-layout type 'SettingsManager' [-Winvalid-offsetof] 184 | const auto& manager = OUTER(SettingsManager, setCompleter); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/settings/SettingsManager.cc:196:24: warning: offset of on non-standard-layout type 'SettingsManager' [-Winvalid-offsetof] 196 | const auto& manager = OUTER(SettingsManager, setCompleter); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 5 warnings generated. Compiling video/GLContext.cc... Compiling video/GLImage.cc... Compiling video/GLSnow.cc... Compiling video/GLUtil.cc... src/sound/WavWriter.cc:135:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 135 | VLA(int16_t, buf, samples); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/sound/WavWriter.cc:135:2: note: function parameter 'samples' with unknown value cannot be used in a constant expression src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/sound/WavWriter.cc:133:41: note: declared here 133 | void Wav16Writer::writeSilence(uint32_t samples) | ^ 1 warning generated. Compiling video/Icon.cc... Compiling video/OffScreenSurface.cc... Compiling video/Layer.cc... In file included from src/sound/MSXYamahaSFG.cc:1: In file included from src/sound/MSXYamahaSFG.hh:6: src/serial/YM2148.hh:48:19: warning: offset of on non-standard-layout type 'YM2148' [-Winvalid-offsetof] 48 | auto& ym2148 = OUTER(YM2148, syncRecv); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/sound/MSXYamahaSFG.cc:1: In file included from src/sound/MSXYamahaSFG.hh:6: src/serial/YM2148.hh:56:19: warning: offset of on non-standard-layout type 'YM2148' [-Winvalid-offsetof] 56 | auto& ym2148 = OUTER(YM2148, syncTrans); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling video/OutputSurface.cc... Compiling video/PixelRenderer.cc... Compiling video/PNG.cc... Compiling video/PostProcessor.cc... Compiling video/RawFrame.cc... Compiling video/RenderSettings.cc... Compiling video/RendererFactory.cc... Compiling video/SDLRasterizer.cc... src/sound/SN76489.cc:360:24: warning: offset of on non-standard-layout type 'SN76489' [-Winvalid-offsetof] 360 | const auto& sn76489 = OUTER(SN76489, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/sound/SN76489.cc:371:18: warning: offset of on non-standard-layout type 'SN76489' [-Winvalid-offsetof] 371 | auto& sn76489 = OUTER(SN76489, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling video/SDLVideoSystem.cc... In file included from src/settings/UserSettings.cc:1: src/settings/UserSettings.hh:54:5: warning: offset of on non-standard-layout type 'UserSettings' [-Winvalid-offsetof] 54 | OUTER(UserSettings, userSettingCommand).settings, | ^ ~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/settings/UserSettings.cc:94:23: warning: offset of on non-standard-layout type 'UserSettings' [-Winvalid-offsetof] 94 | auto& userSettings = OUTER(UserSettings, userSettingCommand); | ^ ~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/settings/UserSettings.cc:190:23: warning: offset of on non-standard-layout type 'UserSettings' [-Winvalid-offsetof] 190 | auto& userSettings = OUTER(UserSettings, userSettingCommand); | ^ ~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/settings/UserSettings.cc:3: In file included from src/settings/BooleanSetting.hh:4: In file included from src/settings/Setting.hh:5: src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl, (lambda at src/settings/UserSettings.hh:55:5)>>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements, (lambda at src/settings/UserSettings.hh:55:5)>>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/settings/UserSettings.cc:201:9: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements &, (lambda at src/settings/UserSettings.hh:55:5)>>' requested here 201 | result.addListElements(getSettingNames()); | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ 4 warnings generated. src/sound/YM2413.cc:27:23: warning: offset of on non-standard-layout type 'YM2413' [-Winvalid-offsetof] 27 | const auto& ym2413 = OUTER(YM2413, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/sound/YM2413.cc:33:17: warning: offset of on non-standard-layout type 'YM2413' [-Winvalid-offsetof] 33 | auto& ym2413 = OUTER(YM2413, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling video/SpriteChecker.cc... Compiling video/SuperImposedFrame.cc... Compiling video/VDP.cc... Compiling video/VDPAccessSlots.cc... Compiling video/VDPCmdEngine.cc... Compiling video/VideoLayer.cc... Compiling video/VideoSystem.cc... Compiling video/VDPVRAM.cc... src/sound/SCC.cc:510:20: warning: offset of on non-standard-layout type 'SCC' [-Winvalid-offsetof] 510 | const auto& scc = OUTER(SCC, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/sound/SCC.cc:527:14: warning: offset of on non-standard-layout type 'SCC' [-Winvalid-offsetof] 527 | auto& scc = OUTER(SCC, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. Compiling video/VisibleSurface.cc... Compiling video/ZMBVEncoder.cc... src/sound/SoundDevice.cc:292:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 292 | VLA(int, mixBalance, numChannels); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/sound/SoundDevice.cc:292:23: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function 292 | VLA(int, mixBalance, numChannels); | ^ 1 warning generated. Compiling video/ld/LDPixelRenderer.cc... Compiling video/ld/LDSDLRasterizer.cc... Compiling video/scalers/GLDefaultScaler.cc... Compiling video/scalers/GLHQLiteScaler.cc... Compiling video/ld/LDDummyRenderer.cc... Compiling video/scalers/GLHQScaler.cc... Compiling video/scalers/GLRGBScaler.cc... Compiling video/scalers/GLScaleNxScaler.cc... Compiling video/scalers/GLScaler.cc... Compiling video/scalers/GLScalerFactory.cc... Compiling video/scalers/GLSimpleScaler.cc... Compiling video/scalers/GLTVScaler.cc... Compiling video/v9990/V9990.cc... Compiling video/v9990/V9990BitmapConverter.cc... Compiling video/v9990/V9990CmdEngine.cc... Compiling video/v9990/V9990DummyRenderer.cc... Compiling video/v9990/V9990PixelRenderer.cc... src/video/Deflicker.cc:82:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 82 | VLA_SSE_ALIGNED(Pixel, buf2, width0); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~~~ src/video/Deflicker.cc:82:2: note: read of non-const variable 'width0' is not allowed in a constant expression src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^ src/video/Deflicker.cc:67:11: note: declared here 67 | unsigned width0 = lastFrames[0]->getLineWidthDirect(line); | ^ 1 warning generated. src/sound/MSXMixer.cc:459:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 459 | VLA_SSE_ALIGNED(float, monoBufExtra, samples + 3); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~~~ src/sound/MSXMixer.cc:459:47: note: read of non-const variable 'samples' is not allowed in a constant expression 459 | VLA_SSE_ALIGNED(float, monoBufExtra, samples + 3); | ^ src/sound/MSXMixer.cc:447:7: note: declared here 447 | auto samples = output.size(); // per channel | ^ src/sound/MSXMixer.cc:460:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 460 | VLA_SSE_ALIGNED(StereoFloat, stereoBufExtra, samples + 3); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~~~ src/sound/MSXMixer.cc:460:47: note: read of non-const variable 'samples' is not allowed in a constant expression 460 | VLA_SSE_ALIGNED(StereoFloat, stereoBufExtra, samples + 3); | ^ src/sound/MSXMixer.cc:447:7: note: declared here 447 | auto samples = output.size(); // per channel | ^ src/sound/MSXMixer.cc:461:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 461 | VLA_SSE_ALIGNED(StereoFloat, tmpBufExtra, samples + 3); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~~~ src/sound/MSXMixer.cc:461:47: note: read of non-const variable 'samples' is not allowed in a constant expression 461 | VLA_SSE_ALIGNED(StereoFloat, tmpBufExtra, samples + 3); | ^ src/sound/MSXMixer.cc:447:7: note: declared here 447 | auto samples = output.size(); // per channel | ^ src/sound/MSXMixer.cc:827:19: warning: offset of on non-standard-layout type 'MSXMixer' [-Winvalid-offsetof] 827 | auto& msxMixer = OUTER(MSXMixer, soundDeviceInfo); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/sound/MSXMixer.cc:856:4: warning: offset of on non-standard-layout type 'MSXMixer' [-Winvalid-offsetof] 856 | OUTER(MSXMixer, soundDeviceInfo).infos, | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/sound/MSXMixer.cc:1: In file included from src/sound/MSXMixer.hh:7: In file included from src/sound/Mixer.hh:4: In file included from src/settings/BooleanSetting.hh:4: In file included from src/settings/Setting.hh:5: src/commands/TclObject.hh:274:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 274 | VLA(Tcl_Obj*, objv, objc); | ^~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/commands/TclObject.hh:133:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElementsImpl, (lambda at src/sound/MSXMixer.cc:832:4)>>' requested here 133 | addListElementsImpl(first, last, | ^ src/commands/TclObject.hh:137:3: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements, (lambda at src/sound/MSXMixer.cc:832:4)>>' requested here 137 | addListElements(std::begin(range), std::end(range)); | ^ src/sound/MSXMixer.cc:830:10: note: in instantiation of function template specialization 'openmsx::TclObject::addListElements &, (lambda at src/sound/MSXMixer.cc:832:4)>>' requested here 830 | result.addListElements(view::transform( | ^ src/commands/TclObject.hh:274:3: note: read of non-const variable 'objc' is not allowed in a constant expression 274 | VLA(Tcl_Obj*, objv, objc); | ^ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/commands/TclObject.hh:272:8: note: declared here 272 | auto objc = last - first; | ^ 6 warnings generated. Compiling video/v9990/V9990PxConverter.cc... Compiling video/v9990/V9990SDLRasterizer.cc... src/video/GLUtil.cc:189:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 189 | VLA(GLchar, infoLog, infoLogLength); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/video/GLUtil.cc:189:3: note: read of non-const variable 'infoLogLength' is not allowed in a constant expression src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/video/GLUtil.cc:185:8: note: declared here 185 | GLint infoLogLength = 0; | ^ src/video/GLUtil.cc:262:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 262 | VLA(GLchar, infoLog, infoLogLength); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/video/GLUtil.cc:262:3: note: read of non-const variable 'infoLogLength' is not allowed in a constant expression src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/video/GLUtil.cc:258:8: note: declared here 258 | GLint infoLogLength = 0; | ^ src/video/GLUtil.cc:297:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 297 | VLA(GLchar, infoLog, infoLogLength); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/video/GLUtil.cc:297:2: note: read of non-const variable 'infoLogLength' is not allowed in a constant expression src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/video/GLUtil.cc:294:8: note: declared here 294 | GLint infoLogLength = 0; | ^ 3 warnings generated. Compiling video/v9990/V9990VRAM.cc... Compiling video/v9990/Video9000.cc... src/video/FrameSource.cc:70:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 70 | VLA_SSE_ALIGNED(Pixel, tmpBuf, in.size()); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~~~ /usr/include/c++/v1/span:511:76: note: function parameter 'in' with unknown value cannot be used in a constant expression 511 | _LIBCPP_HIDE_FROM_ABI constexpr size_type size() const noexcept { return __size_; } | ^ src/video/FrameSource.cc:70:33: note: in call to 'in.size()' 70 | VLA_SSE_ALIGNED(Pixel, tmpBuf, in.size()); | ^~~~~~~~~ src/utils/vla.hh:48:69: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~ src/utils/vla.hh:18:23: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~ src/video/FrameSource.cc:68:25: note: declared here 68 | std::span in, std::span out) const | ^ 1 warning generated. In file included from src/video/CharacterConverter.cc:12: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/CharacterConverter.cc:12: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/CharacterConverter.cc:12: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/CharacterConverter.cc:12: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/CharacterConverter.cc:12: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/CharacterConverter.cc:12: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/CharacterConverter.cc:12: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/CharacterConverter.cc:12: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/CharacterConverter.cc:12: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/CharacterConverter.cc:12: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 10 warnings generated. src/video/SuperImposedFrame.cc:42:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 42 | VLA_SSE_ALIGNED(Pixel, bBuf, width); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~~~ src/video/SuperImposedFrame.cc:42:2: note: read of non-const variable 'width' is not allowed in a constant expression src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^ src/video/SuperImposedFrame.cc:38:7: note: declared here 38 | auto width = std::min(std::max(tWidth, bWidth), // as wide as the widest source | ^ 1 warning generated. src/video/scalers/GLHQLiteScaler.cc:115:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 115 | VLA_SSE_ALIGNED(Pixel, buf1, lineWidth); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~~~ src/video/scalers/GLHQLiteScaler.cc:115:2: note: function parameter 'lineWidth' with unknown value cannot be used in a constant expression src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^ src/video/scalers/GLHQLiteScaler.cc:104:49: note: declared here 104 | unsigned srcStartY, unsigned srcEndY, unsigned lineWidth, | ^ src/video/scalers/GLHQLiteScaler.cc:116:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 116 | VLA_SSE_ALIGNED(Pixel, buf2, lineWidth); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~~~ src/video/scalers/GLHQLiteScaler.cc:116:2: note: function parameter 'lineWidth' with unknown value cannot be used in a constant expression src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^ src/video/scalers/GLHQLiteScaler.cc:104:49: note: declared here 104 | unsigned srcStartY, unsigned srcEndY, unsigned lineWidth, | ^ 2 warnings generated. In file included from src/video/ADVram.cc:2: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/ADVram.cc:2: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/ADVram.cc:2: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/ADVram.cc:2: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/ADVram.cc:2: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/ADVram.cc:2: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/ADVram.cc:2: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/ADVram.cc:2: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/ADVram.cc:2: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/ADVram.cc:2: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 10 warnings generated. src/video/PNG.cc:183:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 183 | VLA(png_bytep, rowPointers, height); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/video/PNG.cc:183:3: note: read of non-const variable 'height' is not allowed in a constant expression src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/video/PNG.cc:131:22: note: declared here 131 | png_uint_32 width, height; | ^ src/video/PNG.cc:319:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 319 | VLA(const void*, row_pointers, image->h); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/video/PNG.cc:319:33: note: function parameter 'image' with unknown value cannot be used in a constant expression 319 | VLA(const void*, row_pointers, image->h); | ^ src/video/PNG.cc:312:31: note: declared here 312 | static void save(SDL_Surface* image, const std::string& filename) | ^ 2 warnings generated. src/video/scalers/GLHQScaler.cc:127:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 127 | VLA_SSE_ALIGNED(Pixel, buf1, lineWidth); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~~~ src/video/scalers/GLHQScaler.cc:127:2: note: function parameter 'lineWidth' with unknown value cannot be used in a constant expression src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^ src/video/scalers/GLHQScaler.cc:116:49: note: declared here 116 | unsigned srcStartY, unsigned srcEndY, unsigned lineWidth, | ^ src/video/scalers/GLHQScaler.cc:128:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 128 | VLA_SSE_ALIGNED(Pixel, buf2, lineWidth); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^~~~~~~~ src/video/scalers/GLHQScaler.cc:128:2: note: function parameter 'lineWidth' with unknown value cannot be used in a constant expression src/utils/vla.hh:48:45: note: expanded from macro 'VLA_SSE_ALIGNED' 48 | #define VLA_SSE_ALIGNED(TYPE, NAME, LENGTH) VLA_ALIGNED(TYPE, NAME, LENGTH, 16) | ^ src/utils/vla.hh:18:22: note: expanded from macro 'VLA_ALIGNED' 18 | TYPE NAME##_storage[(LENGTH)] __attribute__((__aligned__((ALIGNMENT)))); \ | ^ src/video/scalers/GLHQScaler.cc:116:49: note: declared here 116 | unsigned srcStartY, unsigned srcEndY, unsigned lineWidth, | ^ 2 warnings generated. In file included from src/video/SpriteChecker.cc:11: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SpriteChecker.cc:11: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SpriteChecker.cc:11: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SpriteChecker.cc:11: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SpriteChecker.cc:11: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SpriteChecker.cc:11: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SpriteChecker.cc:11: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SpriteChecker.cc:11: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SpriteChecker.cc:11: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SpriteChecker.cc:11: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 10 warnings generated. In file included from src/video/VDPVRAM.cc:1: In file included from src/video/VDPVRAM.hh:5: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPVRAM.cc:1: In file included from src/video/VDPVRAM.hh:5: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPVRAM.cc:1: In file included from src/video/VDPVRAM.hh:5: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPVRAM.cc:1: In file included from src/video/VDPVRAM.hh:5: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPVRAM.cc:1: In file included from src/video/VDPVRAM.hh:5: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPVRAM.cc:1: In file included from src/video/VDPVRAM.hh:5: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPVRAM.cc:1: In file included from src/video/VDPVRAM.hh:5: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPVRAM.cc:1: In file included from src/video/VDPVRAM.hh:5: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPVRAM.cc:1: In file included from src/video/VDPVRAM.hh:5: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPVRAM.cc:1: In file included from src/video/VDPVRAM.hh:5: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDPVRAM.cc:46:21: warning: offset of on non-standard-layout type 'VDPVRAM' [-Winvalid-offsetof] 46 | const auto& vram = OUTER(VDPVRAM, logicalVRAMDebug); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDPVRAM.cc:54:15: warning: offset of on non-standard-layout type 'VDPVRAM' [-Winvalid-offsetof] 54 | auto& vram = OUTER(VDPVRAM, logicalVRAMDebug); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDPVRAM.cc:61:15: warning: offset of on non-standard-layout type 'VDPVRAM' [-Winvalid-offsetof] 61 | auto& vram = OUTER(VDPVRAM, logicalVRAMDebug); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDPVRAM.cc:79:15: warning: offset of on non-standard-layout type 'VDPVRAM' [-Winvalid-offsetof] 79 | auto& vram = OUTER(VDPVRAM, physicalVRAMDebug); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDPVRAM.cc:86:15: warning: offset of on non-standard-layout type 'VDPVRAM' [-Winvalid-offsetof] 86 | auto& vram = OUTER(VDPVRAM, physicalVRAMDebug); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 15 warnings generated. src/sound/YMF278.cc:1138:23: warning: offset of on non-standard-layout type 'YMF278' [-Winvalid-offsetof] 1138 | const auto& ymf278 = OUTER(YMF278, debugRegisters); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/sound/YMF278.cc:1144:17: warning: offset of on non-standard-layout type 'YMF278' [-Winvalid-offsetof] 1144 | auto& ymf278 = OUTER(YMF278, debugRegisters); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/sound/YMF278.cc:1160:23: warning: offset of on non-standard-layout type 'YMF278' [-Winvalid-offsetof] 1160 | const auto& ymf278 = OUTER(YMF278, debugMemory); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/sound/YMF278.cc:1166:17: warning: offset of on non-standard-layout type 'YMF278' [-Winvalid-offsetof] 1166 | auto& ymf278 = OUTER(YMF278, debugMemory); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 4 warnings generated. src/video/AviRecorder.cc:139:4: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 139 | VLA(int16_t, buf, 2 * num); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/video/AviRecorder.cc:139:26: note: read of non-const variable 'num' is not allowed in a constant expression 139 | VLA(int16_t, buf, 2 * num); | ^ src/video/AviRecorder.cc:134:7: note: declared here 134 | auto num = data.size(); | ^ src/video/AviRecorder.cc:148:3: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 148 | VLA(int16_t, buf, num); | ^~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/video/AviRecorder.cc:148:3: note: read of non-const variable 'num' is not allowed in a constant expression src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/video/AviRecorder.cc:134:7: note: declared here 134 | auto num = data.size(); | ^ src/video/AviRecorder.cc:311:19: warning: offset of on non-standard-layout type 'AviRecorder' [-Winvalid-offsetof] 311 | auto& recorder = OUTER(AviRecorder, recordCommand); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 3 warnings generated. In file included from src/video/v9990/V9990PxConverter.cc:2: src/video/v9990/V9990.hh:377:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 377 | auto& v9990 = OUTER(V9990, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990PxConverter.cc:2: src/video/v9990/V9990.hh:385:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 385 | auto& v9990 = OUTER(V9990, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990PxConverter.cc:2: src/video/v9990/V9990.hh:393:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 393 | auto& v9990 = OUTER(V9990, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990PxConverter.cc:2: src/video/v9990/V9990.hh:401:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 401 | auto& v9990 = OUTER(V9990, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990PxConverter.cc:2: src/video/v9990/V9990.hh:409:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 409 | auto& v9990 = OUTER(V9990, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990PxConverter.cc:2: src/video/v9990/V9990.hh:417:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 417 | auto& v9990 = OUTER(V9990, syncCmdEnd); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 6 warnings generated. In file included from src/video/v9990/V9990BitmapConverter.cc:3: src/video/v9990/V9990.hh:377:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 377 | auto& v9990 = OUTER(V9990, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990BitmapConverter.cc:3: src/video/v9990/V9990.hh:385:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 385 | auto& v9990 = OUTER(V9990, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990BitmapConverter.cc:3: src/video/v9990/V9990.hh:393:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 393 | auto& v9990 = OUTER(V9990, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990BitmapConverter.cc:3: src/video/v9990/V9990.hh:401:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 401 | auto& v9990 = OUTER(V9990, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990BitmapConverter.cc:3: src/video/v9990/V9990.hh:409:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 409 | auto& v9990 = OUTER(V9990, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990BitmapConverter.cc:3: src/video/v9990/V9990.hh:417:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 417 | auto& v9990 = OUTER(V9990, syncCmdEnd); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 6 warnings generated. In file included from src/video/v9990/V9990VRAM.cc:1: src/video/v9990/V9990.hh:377:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 377 | auto& v9990 = OUTER(V9990, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990VRAM.cc:1: src/video/v9990/V9990.hh:385:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 385 | auto& v9990 = OUTER(V9990, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990VRAM.cc:1: src/video/v9990/V9990.hh:393:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 393 | auto& v9990 = OUTER(V9990, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990VRAM.cc:1: src/video/v9990/V9990.hh:401:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 401 | auto& v9990 = OUTER(V9990, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990VRAM.cc:1: src/video/v9990/V9990.hh:409:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 409 | auto& v9990 = OUTER(V9990, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990VRAM.cc:1: src/video/v9990/V9990.hh:417:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 417 | auto& v9990 = OUTER(V9990, syncCmdEnd); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 6 warnings generated. src/video/VisibleSurface.cc:354:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 354 | VLA(const uint32_t*, rowPointers, h); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/video/VisibleSurface.cc:348:11: note: initializer of 'h' is not a constant expression 348 | auto [w, h] = output.getViewSize(); | ^ src/video/VisibleSurface.cc:348:11: note: declared here src/video/VisibleSurface.cc:389:27: warning: offset of on non-standard-layout type 'VisibleSurface' [-Winvalid-offsetof] 389 | const auto& visSurface = OUTER(VisibleSurface, vSyncObserver); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. In file included from src/video/SDLRasterizer.cc:1: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLRasterizer.cc:1: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLRasterizer.cc:1: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLRasterizer.cc:1: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLRasterizer.cc:1: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLRasterizer.cc:1: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLRasterizer.cc:1: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLRasterizer.cc:1: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLRasterizer.cc:1: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLRasterizer.cc:1: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 10 warnings generated. In file included from src/video/SDLVideoSystem.cc:2: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:2: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:2: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:2: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:2: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:2: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:2: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:2: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:2: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:2: In file included from src/video/SDLRasterizer.hh:7: In file included from src/video/SpriteConverter.hh:9: In file included from src/video/SpriteChecker.hh:4: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:12: src/video/v9990/V9990.hh:377:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 377 | auto& v9990 = OUTER(V9990, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:12: src/video/v9990/V9990.hh:385:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 385 | auto& v9990 = OUTER(V9990, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:12: src/video/v9990/V9990.hh:393:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 393 | auto& v9990 = OUTER(V9990, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:12: src/video/v9990/V9990.hh:401:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 401 | auto& v9990 = OUTER(V9990, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:12: src/video/v9990/V9990.hh:409:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 409 | auto& v9990 = OUTER(V9990, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:12: src/video/v9990/V9990.hh:417:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 417 | auto& v9990 = OUTER(V9990, syncCmdEnd); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:18: src/laserdisc/LaserdiscPlayer.hh:127:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 127 | auto& player = OUTER(LaserdiscPlayer, syncAck); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:18: src/laserdisc/LaserdiscPlayer.hh:135:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 135 | auto& player = OUTER(LaserdiscPlayer, syncOdd); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/SDLVideoSystem.cc:18: src/laserdisc/LaserdiscPlayer.hh:143:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 143 | auto& player = OUTER(LaserdiscPlayer, syncEven); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 19 warnings generated. In file included from src/video/PixelRenderer.cc:14: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/PixelRenderer.cc:14: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/PixelRenderer.cc:14: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/PixelRenderer.cc:14: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/PixelRenderer.cc:14: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/PixelRenderer.cc:14: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/PixelRenderer.cc:14: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/PixelRenderer.cc:14: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/PixelRenderer.cc:14: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/PixelRenderer.cc:14: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 10 warnings generated. src/video/PostProcessor.cc:166:2: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension] 166 | VLA(const FrameSource::Pixel*, lines, height2); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^~~~~~~~ src/video/PostProcessor.cc:166:2: note: function parameter 'height2' with unknown value cannot be used in a constant expression src/utils/vla.hh:13:22: note: expanded from macro 'VLA' 13 | TYPE NAME##_storage[(LENGTH)]; \ | ^ src/video/PostProcessor.cc:160:48: note: declared here 160 | void PostProcessor::takeRawScreenShot(unsigned height2, const std::string& filename) | ^ 1 warning generated. In file included from src/video/ld/LDPixelRenderer.cc:10: src/laserdisc/LaserdiscPlayer.hh:127:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 127 | auto& player = OUTER(LaserdiscPlayer, syncAck); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/ld/LDPixelRenderer.cc:10: src/laserdisc/LaserdiscPlayer.hh:135:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 135 | auto& player = OUTER(LaserdiscPlayer, syncOdd); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/ld/LDPixelRenderer.cc:10: src/laserdisc/LaserdiscPlayer.hh:143:19: warning: offset of on non-standard-layout type 'LaserdiscPlayer' [-Winvalid-offsetof] 143 | auto& player = OUTER(LaserdiscPlayer, syncEven); | ^ ~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 3 warnings generated. src/sound/Y8950.cc:1358:22: warning: offset of on non-standard-layout type 'Y8950' [-Winvalid-offsetof] 1358 | const auto& y8950 = OUTER(Y8950, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/sound/Y8950.cc:1364:16: warning: offset of on non-standard-layout type 'Y8950' [-Winvalid-offsetof] 1364 | auto& y8950 = OUTER(Y8950, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. In file included from src/video/v9990/V9990PixelRenderer.cc:2: src/video/v9990/V9990.hh:377:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 377 | auto& v9990 = OUTER(V9990, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990PixelRenderer.cc:2: src/video/v9990/V9990.hh:385:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 385 | auto& v9990 = OUTER(V9990, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990PixelRenderer.cc:2: src/video/v9990/V9990.hh:393:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 393 | auto& v9990 = OUTER(V9990, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990PixelRenderer.cc:2: src/video/v9990/V9990.hh:401:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 401 | auto& v9990 = OUTER(V9990, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990PixelRenderer.cc:2: src/video/v9990/V9990.hh:409:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 409 | auto& v9990 = OUTER(V9990, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990PixelRenderer.cc:2: src/video/v9990/V9990.hh:417:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 417 | auto& v9990 = OUTER(V9990, syncCmdEnd); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 6 warnings generated. In file included from src/video/v9990/V9990SDLRasterizer.cc:2: src/video/v9990/V9990.hh:377:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 377 | auto& v9990 = OUTER(V9990, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990SDLRasterizer.cc:2: src/video/v9990/V9990.hh:385:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 385 | auto& v9990 = OUTER(V9990, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990SDLRasterizer.cc:2: src/video/v9990/V9990.hh:393:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 393 | auto& v9990 = OUTER(V9990, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990SDLRasterizer.cc:2: src/video/v9990/V9990.hh:401:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 401 | auto& v9990 = OUTER(V9990, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990SDLRasterizer.cc:2: src/video/v9990/V9990.hh:409:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 409 | auto& v9990 = OUTER(V9990, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990SDLRasterizer.cc:2: src/video/v9990/V9990.hh:417:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 417 | auto& v9990 = OUTER(V9990, syncCmdEnd); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 6 warnings generated. src/video/Display.cc:441:18: warning: offset of on non-standard-layout type 'Display' [-Winvalid-offsetof] 441 | auto& display = OUTER(Display, screenShotCmd); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/Display.cc:535:18: warning: offset of on non-standard-layout type 'Display' [-Winvalid-offsetof] 535 | auto& display = OUTER(Display, fpsInfo); | ^ ~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. In file included from src/video/v9990/Video9000.cc:2: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:2: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:2: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:2: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:2: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:2: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:2: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:2: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:2: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:2: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:3: src/video/v9990/V9990.hh:377:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 377 | auto& v9990 = OUTER(V9990, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:3: src/video/v9990/V9990.hh:385:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 385 | auto& v9990 = OUTER(V9990, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:3: src/video/v9990/V9990.hh:393:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 393 | auto& v9990 = OUTER(V9990, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:3: src/video/v9990/V9990.hh:401:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 401 | auto& v9990 = OUTER(V9990, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:3: src/video/v9990/V9990.hh:409:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 409 | auto& v9990 = OUTER(V9990, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/Video9000.cc:3: src/video/v9990/V9990.hh:417:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 417 | auto& v9990 = OUTER(V9990, syncCmdEnd); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 16 warnings generated. In file included from src/video/v9990/V9990.cc:1: src/video/v9990/V9990.hh:377:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 377 | auto& v9990 = OUTER(V9990, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990.cc:1: src/video/v9990/V9990.hh:385:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 385 | auto& v9990 = OUTER(V9990, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990.cc:1: src/video/v9990/V9990.hh:393:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 393 | auto& v9990 = OUTER(V9990, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990.cc:1: src/video/v9990/V9990.hh:401:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 401 | auto& v9990 = OUTER(V9990, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990.cc:1: src/video/v9990/V9990.hh:409:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 409 | auto& v9990 = OUTER(V9990, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990.cc:1: src/video/v9990/V9990.hh:417:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 417 | auto& v9990 = OUTER(V9990, syncCmdEnd); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/v9990/V9990.cc:488:16: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 488 | auto& v9990 = OUTER(V9990, v9990RegDebug); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/v9990/V9990.cc:494:16: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 494 | auto& v9990 = OUTER(V9990, v9990RegDebug); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/v9990/V9990.cc:511:16: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 511 | auto& v9990 = OUTER(V9990, v9990PalDebug); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/v9990/V9990.cc:517:16: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 517 | auto& v9990 = OUTER(V9990, v9990PalDebug); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 10 warnings generated. src/sound/YMF262.cc:1713:23: warning: offset of on non-standard-layout type 'YMF262' [-Winvalid-offsetof] 1713 | const auto& ymf262 = OUTER(YMF262, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/sound/YMF262.cc:1719:17: warning: offset of on non-standard-layout type 'YMF262' [-Winvalid-offsetof] 1719 | auto& ymf262 = OUTER(YMF262, debuggable); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 2 warnings generated. In file included from src/video/v9990/V9990CmdEngine.cc:3: src/video/v9990/V9990.hh:377:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 377 | auto& v9990 = OUTER(V9990, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990CmdEngine.cc:3: src/video/v9990/V9990.hh:385:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 385 | auto& v9990 = OUTER(V9990, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990CmdEngine.cc:3: src/video/v9990/V9990.hh:393:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 393 | auto& v9990 = OUTER(V9990, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990CmdEngine.cc:3: src/video/v9990/V9990.hh:401:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 401 | auto& v9990 = OUTER(V9990, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990CmdEngine.cc:3: src/video/v9990/V9990.hh:409:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 409 | auto& v9990 = OUTER(V9990, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/v9990/V9990CmdEngine.cc:3: src/video/v9990/V9990.hh:417:18: warning: offset of on non-standard-layout type 'V9990' [-Winvalid-offsetof] 417 | auto& v9990 = OUTER(V9990, syncCmdEnd); | ^ ~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 6 warnings generated. In file included from src/video/VDP.cc:20: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDP.cc:20: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDP.cc:20: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDP.cc:20: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDP.cc:20: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDP.cc:20: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDP.cc:20: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDP.cc:20: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDP.cc:20: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDP.cc:20: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDP.cc:1601:20: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 1601 | const auto& vdp = OUTER(VDP, vdpRegDebug); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDP.cc:1607:14: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 1607 | auto& vdp = OUTER(VDP, vdpRegDebug); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDP.cc:1627:20: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 1627 | const auto& vdp = OUTER(VDP, vdpStatusRegDebug); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDP.cc:1642:20: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 1642 | const auto& vdp = OUTER(VDP, vdpPaletteDebug); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDP.cc:1650:14: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 1650 | auto& vdp = OUTER(VDP, vdpPaletteDebug); | ^ ~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDP.cc:1676:20: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 1676 | const auto& vdp = OUTER(VDP, vramPointerDebug); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDP.cc:1686:14: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 1686 | auto& vdp = OUTER(VDP, vramPointerDebug); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDP.cc:1705:20: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 1705 | const auto& vdp = OUTER(VDP, registerLatchStatusDebug); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDP.cc:1720:20: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 1720 | const auto& vdp = OUTER(VDP, vramAccessStatusDebug); | ^ ~~~~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDP.cc:1734:20: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 1734 | const auto& vdp = OUTER(VDP, paletteLatchStatusDebug); | ^ ~~~~~~~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ src/video/VDP.cc:1748:20: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 1748 | const auto& vdp = OUTER(VDP, dataLatchDebug); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 21 warnings generated. In file included from src/video/VDPAccessSlots.cc:1: In file included from src/video/VDPAccessSlots.hh:4: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPAccessSlots.cc:1: In file included from src/video/VDPAccessSlots.hh:4: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPAccessSlots.cc:1: In file included from src/video/VDPAccessSlots.hh:4: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPAccessSlots.cc:1: In file included from src/video/VDPAccessSlots.hh:4: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPAccessSlots.cc:1: In file included from src/video/VDPAccessSlots.hh:4: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPAccessSlots.cc:1: In file included from src/video/VDPAccessSlots.hh:4: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPAccessSlots.cc:1: In file included from src/video/VDPAccessSlots.hh:4: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPAccessSlots.cc:1: In file included from src/video/VDPAccessSlots.hh:4: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPAccessSlots.cc:1: In file included from src/video/VDPAccessSlots.hh:4: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPAccessSlots.cc:1: In file included from src/video/VDPAccessSlots.hh:4: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 10 warnings generated. In file included from src/video/VDPCmdEngine.cc:36: In file included from src/video/VDPCmdEngine.hh:4: src/video/VDP.hh:805:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 805 | auto& vdp = OUTER(VDP, syncVSync); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPCmdEngine.cc:36: In file included from src/video/VDPCmdEngine.hh:4: src/video/VDP.hh:813:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 813 | auto& vdp = OUTER(VDP, syncDisplayStart); | ^ ~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPCmdEngine.cc:36: In file included from src/video/VDPCmdEngine.hh:4: src/video/VDP.hh:821:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 821 | auto& vdp = OUTER(VDP, syncVScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPCmdEngine.cc:36: In file included from src/video/VDPCmdEngine.hh:4: src/video/VDP.hh:829:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 829 | auto& vdp = OUTER(VDP, syncHScan); | ^ ~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPCmdEngine.cc:36: In file included from src/video/VDPCmdEngine.hh:4: src/video/VDP.hh:837:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 837 | auto& vdp = OUTER(VDP, syncHorAdjust); | ^ ~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPCmdEngine.cc:36: In file included from src/video/VDPCmdEngine.hh:4: src/video/VDP.hh:845:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 845 | auto& vdp = OUTER(VDP, syncSetMode); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPCmdEngine.cc:36: In file included from src/video/VDPCmdEngine.hh:4: src/video/VDP.hh:853:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 853 | auto& vdp = OUTER(VDP, syncSetBlank); | ^ ~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPCmdEngine.cc:36: In file included from src/video/VDPCmdEngine.hh:4: src/video/VDP.hh:861:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 861 | auto& vdp = OUTER(VDP, syncSetSprites); | ^ ~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPCmdEngine.cc:36: In file included from src/video/VDPCmdEngine.hh:4: src/video/VDP.hh:869:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 869 | auto& vdp = OUTER(VDP, syncCpuVramAccess); | ^ ~~~~~~~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ In file included from src/video/VDPCmdEngine.cc:36: In file included from src/video/VDPCmdEngine.hh:4: src/video/VDP.hh:877:16: warning: offset of on non-standard-layout type 'VDP' [-Winvalid-offsetof] 877 | auto& vdp = OUTER(VDP, syncCmdDone); | ^ ~~~~~~~~~~~ src/utils/outer.hh:43:85: note: expanded from macro 'OUTER' 43 | *std::bit_cast(std::bit_cast(this) - offsetof(type, member))) | ^ ~~~~~~ /usr/include/stddef.h:73:31: note: expanded from macro 'offsetof' 73 | #define offsetof(type, field) __offsetof(type, field) | ^ ~~~~~ /usr/include/sys/cdefs.h:459:34: note: expanded from macro '__offsetof' 459 | #define __offsetof(type, field) __builtin_offsetof(type, field) | ^ ~~~~~ 10 warnings generated. Linking openmsx... c++: warning: argument unused during compilation: '-static-libgcc' [-Wunused-command-line-argument] c++: warning: argument unused during compilation: '-static-libstdc++' [-Wunused-command-line-argument] =========================================================================== =================================================== ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 ===> openmsx-20.0_1 depends on file: /usr/local/bin/python3.11 - found =========================================================================== =================================================== ===== env: NO_DEPENDS=yes USER=root UID=0 GID=0 ===> Staging for openmsx-20.0_1 ===> Generating temporary packing list Using Python: python3 build/main.mk:348: Unsupported compiler: c++, please update Makefile Build configuration: Platform: x86_64-freebsd Flavour: opt Compiler: c++ Subset: full build Up to date: derived/x86_64-freebsd-opt/config/Version.ii Installing openMSX: Executable... Data files... Documentation... C-BIOS... Creating symlinks... Installation complete... have fun! Notice: if you want to emulate real MSX systems and not only the free C-BIOS machines, put the system ROMs in one of the following directories: /usr/local/share/openmsx/systemroms or ~/.openMSX/share/systemroms If you want openMSX to find MSX software referred to from replays or savestates you get from your friends, copy that MSX software to /usr/local/share/openmsx/software or ~/.openMSX/share/software ====> Compressing man pages (compress-man) =========================================================================== =================================================== ===== env: 'PKG_NOTES=build_timestamp ports_top_git_hash ports_top_checkout_unclean port_git_hash port_checkout_unclean built_by' 'PKG_NOTE_build_timestamp=2026-01-20T12:13:23+0000' 'PKG_NOTE_ports_top_git_hash=076a295eb33c' 'PKG_NOTE_ports_top_checkout_unclean=no' 'PKG_NOTE_port_git_hash=e14a177aa36a' 'PKG_NOTE_port_checkout_unclean=no' 'PKG_NOTE_built_by=poudriere-git-3.4.2' NO_DEPENDS=yes USER=root UID=0 GID=0 ===> Building packages for openmsx-20.0_1 ===> Building openmsx-20.0_1 =========================================================================== =>> Cleaning up wrkdir ===> Cleaning for openmsx-20.0_1 build of emulators/openmsx | openmsx-20.0_1 ended at Tue Jan 20 07:15:10 EST 2026 build time: 00:01:48