Dear R devs, I am probably missing something obvious, but still trying to understand why the 1954 from the definition of an NA has to fill 32 bits when it normally doesn't need more than 16.
Wouldn't the code below achieve exactly the same thing? typedef union { double value; unsigned short word[4]; } ieee_double; #ifdef WORDS_BIGENDIAN static CONST int hw = 0; static CONST int lw = 3; #else /* !WORDS_BIGENDIAN */ static CONST int hw = 3; static CONST int lw = 0; #endif /* WORDS_BIGENDIAN */ static double R_ValueOfNA(void) { volatile ieee_double x; x.word[hw] = 0x7ff0; x.word[lw] = 1954; return x.value; } This question has to do with the tagged NA values from package haven, on which I want to improve. Every available bit counts, especially if multi-byte characters are going to be involved. Best wishes, -- Adrian Dusa University of Bucharest Romanian Social Data Archive Soseaua Panduri nr. 90-92 050663 Bucharest sector 5 Romania https://adriandusa.eu [[alternative HTML version deleted]] ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel