That's because sqrt() only uses floating point variables (float, double, or long double).
Adding casts to double should fix the error:
for(uint64_t i = 3; i < sqrt((double)number); i += 2) {
uint64_t sz = NIGHTCAP_CACHE_BYTES_INIT + (NIGHTCAP_CACHE_BYTES_GROWTH * round(sqrt((double)(6 * (block_number / NIGHTCAP_EPOCH_LENGTH)))));
uint64_t sz = NIGHTCAP_DATASET_BYTES_INIT + (NIGHTCAP_DATASET_BYTES_GROWTH * round(sqrt((double)(6 * (block_number / NIGHTCAP_EPOCH_LENGTH)))));