The full command used to precompile the header:
``` /usr/bin/g++-12 -DBOOST_ALL_NO_LIB -DBOOST_DATE_TIME_DYN_LINK -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_IOSTREAMS_DYN_LINK -DBOOST_PROGRAM_OPTIONS_DYN_LINK -DBOOST_SYSTEM_DYN_LINK -DEGL_NO_X11 -DGTEST_VERSION_MAJOR=1 -DGTEST_VERSION_MINOR=12 -DGTEST_VERSION_PATCH=1 -DLTTNG_UST_HAVE_SDT_INTEGRATION -DMESA_EGL_NO_X11_HEADERS -DMIR_BUILD_PLATFORM_GBM_KMS -DMIR_DRMMODEADDFB_HAS_CONST_SIGNATURE -DMIR_VERSION_MAJOR=2 -DMIR_VERSION_MICRO=0 -DMIR_VERSION_MINOR=8 -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -I/usr/src/googletest/googlemock/include -I/home/ubuntu/mir/include/miral -I/home/ubuntu/mir/src/include/server -I/usr/include/uuid -I/home/ubuntu/mir/include/test -I/home/ubuntu/mir/include/renderer -I/home/ubuntu/mir/include/renderers/gl -I/home/ubuntu/mir/build-arm64/src/platform/graphics -I/home/ubuntu/mir/include/platform -I/home/ubuntu/mir/src/include/platform -I/home/ubuntu/mir/include/wayland -I/home/ubuntu/mir/build-arm64/src/wayland -I/home/ubuntu/mir/include/core -I/home/ubuntu/mir/include/common -I/home/ubuntu/mir/include/cookie -g -O2 -ffile-prefix-map=/home/ubuntu/mir=. -flto=auto -ffat-lto-objects -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pthread -g -Wall -fno-strict-aliasing -pedantic -Wnon-virtual-dtor -Wextra -fPIC -Werror -Wno-mismatched-tags -Wno-psabi -flto -ffat-lto-objects -Wno-error=null-dereference -Wno-error=overloaded-virtual -Wno-sign-compare -Wno-error=maybe-uninitialized -fno-lto -Wno-error=infinite-recursion -std=c++20 -Winvalid-pch -x c++-header -include cmake_pch.hxx -o cmake_pch.hxx.gch -c cmake_pch.hxx.cxx ```
I'll try and strip it down further, but at least this is a portable reproducer.
Replacing `g++-12` with `g++-11` makes it compile.
The full command used to precompile the header:
``` DATE_TIME_ DYN_LINK -DBOOST_ FILESYSTEM_ DYN_LINK -DBOOST_ IOSTREAMS_ DYN_LINK -DBOOST_ PROGRAM_ OPTIONS_ DYN_LINK -DBOOST_ SYSTEM_ DYN_LINK -DEGL_NO_X11 -DGTEST_ VERSION_ MAJOR=1 -DGTEST_ VERSION_ MINOR=12 -DGTEST_ VERSION_ PATCH=1 -DLTTNG_ UST_HAVE_ SDT_INTEGRATION -DMESA_ EGL_NO_ X11_HEADERS -DMIR_BUILD_ PLATFORM_ GBM_KMS -DMIR_DRMMODEAD DFB_HAS_ CONST_SIGNATURE -DMIR_VERSION_ MAJOR=2 -DMIR_VERSION_ MICRO=0 -DMIR_VERSION_ MINOR=8 -D_FILE_ OFFSET_ BITS=64 -D_GNU_SOURCE -I/usr/ src/googletest/ googlemock/ include -I/home/ ubuntu/ mir/include/ miral -I/home/ ubuntu/ mir/src/ include/ server -I/usr/include/uuid -I/home/ ubuntu/ mir/include/ test -I/home/ ubuntu/ mir/include/ renderer -I/home/ ubuntu/ mir/include/ renderers/ gl -I/home/ ubuntu/ mir/build- arm64/src/ platform/ graphics -I/home/ ubuntu/ mir/include/ platform -I/home/ ubuntu/ mir/src/ include/ platform -I/home/ ubuntu/ mir/include/ wayland -I/home/ ubuntu/ mir/build- arm64/src/ wayland -I/home/ ubuntu/ mir/include/ core -I/home/ ubuntu/ mir/include/ common -I/home/ ubuntu/ mir/include/ cookie -g -O2 -ffile- prefix- map=/home/ ubuntu/ mir=. -flto=auto -ffat-lto-objects -flto=auto -ffat-lto-objects -fstack- protector- strong -Wformat -Werror= format- security -Wdate-time -D_FORTIFY_SOURCE=2 -pthread -g -Wall -fno-strict- aliasing -pedantic -Wnon-virtual-dtor -Wextra -fPIC -Werror -Wno-mismatched -tags -Wno-psabi -flto -ffat-lto-objects -Wno-error= null-dereferenc e -Wno-error= overloaded- virtual -Wno-sign-compare -Wno-error= maybe-uninitial ized -fno-lto -Wno-error= infinite- recursion -std=c++20 -Winvalid-pch -x c++-header -include cmake_pch.hxx -o cmake_pch.hxx.gch -c cmake_pch.hxx.cxx
/usr/bin/g++-12 -DBOOST_ALL_NO_LIB -DBOOST_
```
I'll try and strip it down further, but at least this is a portable reproducer.
Replacing `g++-12` with `g++-11` makes it compile.