From 3d2cf6c5bd35b0d72716b47bdd7e3892388aafc4 Mon Sep 17 00:00:00 2001 From: PiRK Date: Fri, 29 Jan 2021 11:49:51 +0100 Subject: [PATCH] initialize variable in tests This was detected while running the tests with the `-Wconditional-uninitialized` flag ``` ./autogen.sh CC=clang CFLAGS="-Wconditional-uninitialized" ./configure make check ``` The resulting warning is a false positive, but setting the value to -1 ensures that the CHECK below will fail if recid is never written to. --- src/tests.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/tests.c b/src/tests.c index c2d5e28924c75..4110bb9a70c80 100644 --- a/src/tests.c +++ b/src/tests.c @@ -4324,8 +4324,10 @@ void test_ecdsa_sign_verify(void) { secp256k1_scalar one; secp256k1_scalar msg, key; secp256k1_scalar sigr, sigs; - int recid; int getrec; + /* Initialize recid to suppress a false positive -Wconditional-uninitialized in clang. + VG_UNDEF ensures that valgrind will still treat the variable as uninitialized. */ + int recid = -1; VG_UNDEF(&recid, sizeof(recid)); random_scalar_order_test(&msg); random_scalar_order_test(&key); secp256k1_ecmult_gen(&ctx->ecmult_gen_ctx, &pubj, &key);