This blog is updated daily.
A general description is here.
(Windows) A ‘src/Makefile.ucrt’ or ‘src/Makefile.win’ file is now included after ‘R_HOME/etcR_ARCH/Makeconf’ and so no longer needs to include that file itself. Installation now uses a site ‘Makevars’ file in the same way as a package with a ‘src/Makevars.win’ file would.
[In progress]
There is some support for a package to indicate the version of the C standard which should be used to compile it. There are currently two possibilities:
USE_C17 Use a standard that is at most C17. The intention is to allow legacy packages to still be installed when later C standards are preferred.
USE_C23 Use C23 (or in future, later). Compiler/library support for C23 is still being implemented, but LLVM clang 15 and the upcoming GCC 13 have quite extensive support.
These can be specified as part of the ‘SystemRequirements’ field in the package's ‘DESCRIPTION’ file or _via_ options ‘--use-C17’ and ‘--use-C23’ of ‘R CMD INSTALL’ and ‘R CMD SHLIB’.
For further details see “Writing R Extensions” §1.2.5.
(Windows) The default C++ standard had accidentally been left at C++11 when it was changed to C++14 on Unix. It is now C++14, as documented.