improved JITFunction::JITFunction type safety