Eliminate a wrong -Wmaybe-uninitialized warning in GCC
This commit is contained in:
parent
91b64770c3
commit
cc0b279568
@ -182,7 +182,15 @@ int secp256k1_pedersen_blind_generator_blind_sum(const secp256k1_context* ctx, c
|
|||||||
}
|
}
|
||||||
|
|
||||||
secp256k1_scalar_set_int(&sum, 0);
|
secp256k1_scalar_set_int(&sum, 0);
|
||||||
for (i = 0; i < n_total; i++) {
|
|
||||||
|
/* Here, n_total > 0. Thus the loop runs at least once.
|
||||||
|
Thus we may use a do-while loop, which checks the loop
|
||||||
|
condition only at the end.
|
||||||
|
|
||||||
|
The do-while loop helps GCC prove that the loop runs at least
|
||||||
|
once and suppresses a -Wmaybe-uninitialized warning. */
|
||||||
|
i = 0;
|
||||||
|
do {
|
||||||
int overflow = 0;
|
int overflow = 0;
|
||||||
secp256k1_scalar addend;
|
secp256k1_scalar addend;
|
||||||
secp256k1_scalar_set_u64(&addend, value[i]); /* s = v */
|
secp256k1_scalar_set_u64(&addend, value[i]); /* s = v */
|
||||||
@ -207,7 +215,9 @@ int secp256k1_pedersen_blind_generator_blind_sum(const secp256k1_context* ctx, c
|
|||||||
secp256k1_scalar_cond_negate(&addend, i < n_inputs); /* s is negated if it's an input */
|
secp256k1_scalar_cond_negate(&addend, i < n_inputs); /* s is negated if it's an input */
|
||||||
secp256k1_scalar_add(&sum, &sum, &addend); /* sum += s */
|
secp256k1_scalar_add(&sum, &sum, &addend); /* sum += s */
|
||||||
secp256k1_scalar_clear(&addend);
|
secp256k1_scalar_clear(&addend);
|
||||||
}
|
|
||||||
|
i++;
|
||||||
|
} while (i < n_total);
|
||||||
|
|
||||||
/* Right now tmp has the last pedersen blinding factor. Subtract the sum from it. */
|
/* Right now tmp has the last pedersen blinding factor. Subtract the sum from it. */
|
||||||
secp256k1_scalar_negate(&sum, &sum);
|
secp256k1_scalar_negate(&sum, &sum);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user