diff -r dabffc3086dc -r 8acbddf75333 absyntax_utils/absyntax_utils.cc --- a/absyntax_utils/absyntax_utils.cc Tue Jun 05 19:17:29 2012 +0200 +++ b/absyntax_utils/absyntax_utils.cc Wed Jun 06 12:39:32 2012 +0100 @@ -117,19 +117,19 @@ } uint64_t extract_hex_value(symbol_c *sym) { - std::string str = ""; - char *endptr; - hex_integer_c * hex_integer; - uint64_t ret; - - if ((hex_integer = dynamic_cast(sym)) == NULL) ERROR; - for(unsigned int i = 3; i < strlen(hex_integer->value); i++) - if (hex_integer->value[i] != '_') str += hex_integer->value[i]; - errno = 0; /* To distinguish success/failure after call */ - ret = strtol(str.c_str(), &endptr, 16); - if (errno != 0) ERROR; - - return ret; + std::string str = ""; + char *endptr; + hex_integer_c * hex_integer; + uint64_t ret; + + if ((hex_integer = dynamic_cast(sym)) == NULL) ERROR; + for(unsigned int i = 3; i < strlen(hex_integer->value); i++) + if (hex_integer->value[i] != '_') str += hex_integer->value[i]; + errno = 0; /* To distinguish success/failure after call */ + ret = strtoull(str.c_str(), &endptr, 16); + if (errno != 0) ERROR; + + return ret; }