The following assertion seems redundant. Is it a mistake? Two lines prior the same assertion is made, and the value being asserted doesn't appear to change in-between. However the next line asserts a condition on a different variable which differs by only one letter. Is the referenced line a duplicate assertion of `ret` and therefore redundant, or is it supposed to be `assert(rec)`?

https://github.com/bitcoin/bitcoin/blob/7275365c9bc7e7ebd6bbf7dcb251946aac44b5de/src/key.cpp#L247-L251
assert(fValid);
    CPrivKey privkey;
    int ret;
    size_t privkeylen;
    privkey.resize(PRIVATE_KEY_SIZE);
    privkeylen = PRIVATE_KEY_SIZE;
    ret = ec_privkey_export_der(secp256k1_context_sign, privkey.data(), &privkeylen, begin(), fCompressed);
    assert(ret);
    privkey.resize(privkeylen);
    return privkey;
}
CPubKey CKey::GetPubKey() const {
    assert(fValid);
    secp256k1_pubkey pubkey;
    size_t clen = CPubKey::PUBLIC_KEY_SIZE;
    CPubKey result;
    int ret = secp256k1_ec_pubkey_create(secp256k1_context_sign, &pubkey, begin());
    assert(ret);
    secp256k1_ec_pubkey_serialize(secp256k1_context_sign, (unsigned char*)result.begin(), &clen, &pubkey, fCompressed ? SECP256K1_EC_COMPRESSED : SECP256K1_EC_UNCOMPRESSED);
    assert(result.size() == clen);
    assert(result.IsValid());
    return result;
}
bool SigHasLowR(const secp256k1_ecdsa_signature* sig)