The WiredTiger use of XXX.i as the file name for inlined functions is a little odd, generally the XXX.i suffix is reserved for files that do not require pre-processing, and in the case of MSVC, it's a Visual Studio Intermediate file that contains the output of the preprocessor.
References: [GCC and File Extensions|http://labor-liber.org/en/gnu-linux/development/index.php?diapo=extensions
We're currently inconsistent, some WiredTiger XXX.h files contain inline functions, some XXX.i files contain #defines.
- merge the XXX.i files into XXX.h files
- rename the XXX.i files as something else (for example, XXX_inline.h)