From 23e8958a5e539f682be4cbdf5196aa2014c7e295 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 15 Dec 2014 14:09:27 +0100 Subject: [PATCH 2/5] datatype: use mpz_set_str instead of gmp_sscanf This simplifies the integer parsing logic and restricts it to functions being part of the mini-gmp subset. Signed-off-by: Steven Barth --- src/datatype.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) --- a/src/datatype.c +++ b/src/datatype.c @@ -275,11 +275,9 @@ static struct error_record *integer_type struct expr **res) { mpz_t v; - int len; mpz_init(v); - if (gmp_sscanf(sym->identifier, "%Zu%n", v, &len) != 1 || - (int)strlen(sym->identifier) != len) { + if (mpz_set_str(v, sym->identifier, 0)) { mpz_clear(v); return error(&sym->location, "Could not parse %s", sym->dtype->desc);