ALTREP is part of the official R api, as illustrated by the presence of
src/include/R_ext/Altrep.h. Everything declared in the header files in
directory is official API AFAIK (and I believe that is more definitive
That is not true at all - the presence of header does not constitute
declaration of something as the R API. There are cases where internal
functions are in the headers for historical or other reasons since the
headers are used both for the internal implementation and packages. That's
why this is in R-exts under "The R API: entry points for C code":
If I understand your point correctly, does this mean that
Rf_allocVector() is not part of the "official" R API? It does not appear to
be documented in the "The R API: entry points for C code" section.