Strictly necessary cookies are on by default and cannot be turned off. Functional, Performance and Tracking/targeting/sharing cookies can be turned on below based on your preferences (this banner will remain available for you to accept cookies). You may change your cookie settings by deleting cookies from your browser. Then this banner will appear again. You can learn more details about cookies HERE.
Strictly necessary (always on)
Functional, Performance and Tracking/targeting/sharing (default off)
Sorry for not giving the entire explanation earlier.
CRC is included in header(platform_dct_header_t) in SDK version prior to Wiced 3.6.3. After SDK 3.7.0, CRC is moved to version (platform_dct_version_t) section. So all the recent versions have CRC in version. Hence the macro DCT_BOOTLOADER_CRC_IS_IN_HEADER is not defined in the current version. Hence the variable curr_dct will always be declared. Consequently the other part of the code you are pointing will also work.
One more point, if we compare the function wiced_dct_finish_new_dct() in wiced_dct_internal_common.c and wiced_dct_external_common.c file, it appears that curr_dct should not be declared in the #if - #endif block. (I will discuss this internally and update you if we incorporate this change)