diff --git a/parser.c b/parser.c index a009def..a0f7955 100644 --- a/parser.c +++ b/parser.c @@ -257,7 +257,7 @@ static struct symbol *qmi_identifier_parse(char *buf, size_t size, char ch) /* Used for parsing octal numbers */ static int isodigit(int c) { - return isdigit(c) && c < '9'; + return isdigit(c) && c < '8'; } /* Extract a number from input into the given buffer; return base */ diff --git a/tests/bad_octal.qmi b/tests/bad_octal.qmi index 10c43be..df3a826 100644 --- a/tests/bad_octal.qmi +++ b/tests/bad_octal.qmi @@ -7,7 +7,7 @@ struct qmi_result { request test_request { # Note that '8' is not a valid octal digit - optional test_struct foo = 028; + optional u32 foo = 028; } = 0x23; response test_response {