Arduino can be built with C20/C++20 or C17/C++17 by switching to the latest gcc-arm-none-eabi. Below shows 2 different ways one using arduino-cli and the other using a Makefile included in this repo.