When building with Visual Studio 2008, I get the following warning: C4146: unary minus operator applied to unsigned type, result still unsigned
Fix it by casting to (int64_t) and *then* negating the value.
---
crypto/asn1/a_int.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/crypto/asn1/a_int.c b/crypto/asn1/a_int.c
index 0d020e0..5d5e7f6 100644
--- a/crypto/asn1/a_int.c
+++ b/crypto/asn1/a_int.c
@@ -338,7 +338,7 @@ static int asn1_get_int64(int64_t *pr, const unsigned char
*b, size_t blen,
ASN1err(ASN1_F_ASN1_GET_INT64, ASN1_R_TOO_SMALL);
return 0;
}
- *pr = (int64_t)-r;
+ *pr = -(int64_t)r;
} else {
if (r > INT64_MAX) {
ASN1err(ASN1_F_ASN1_GET_INT64, ASN1_R_TOO_LARGE);
--
2.4.3
--
David Woodhouse Open Source Technology Centre
[email protected] Intel Corporation
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ openssl-bugs-mod mailing list [email protected] https://mta.openssl.org/mailman/listinfo/openssl-bugs-mod
_______________________________________________ openssl-dev mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-dev
