cpp11 icon indicating copy to clipboard operation
cpp11 copied to clipboard

avoid need for R_NilValue checks in protect code

Open kevinushey opened this issue 3 years ago • 0 comments
trafficstars

This PR provides a minor optimization, that allows us to avoid the need to check the tail in the precious list for R_NilValue. This is done by ensuring that the "tail" of the precious list is itself initialized as a "cell", and so one can always safely access its CAR.

The only downside is that the "empty" precious list now has two cells rather than one, but it should be worth the bit of extra performance (+ the overall code clarity is IMHO improved).

kevinushey avatar Sep 17 '22 18:09 kevinushey