This blog is updated daily.
A general description is here.
.
The ‘enum’ ‘Rboolean’ defined in header ‘R_ext/Boolean.h’ now has a fixed underlying type of ‘int’ on platforms whose C compiler supports this.
This is a C23 feature (taken from C++11) and also supported in all C standards by some versions of ‘clang’ (from LLVM and Apple) and (with a warning when using ‘-pedantic’) by GCC when in C17 mode.
A fair amount of code has assumed this: it may be changed to a smaller type in future.
If there were a platform which used an underlying type of a different size this would be an ABI-breaking change (but we are unaware of any such platform).
Many arguments which should be length-1 logical are checked more thoroughly. The most commonly seen errors are in ‘unlink(, recursive)’, ‘tempdir()’ and the ‘na.rm’ argument of ‘max()’, ‘min()’, ‘sum()’, ....