Occasionally get an alignment error on 32 bit devices. This fix works for me:
static id FCReadFloat64(__unsafe_unretained FCNSDecoder* decoder) {
FC_ALIGN_INPUT(double_t, *decoder->_offset);
FC_READ_VALUE(uint64_t, *decoder->_offset, decoder->_input, decoder->_total);
__autoreleasing NSNumber* number = @(*(double_t*)&value);
return number;
}