diff options
author | Gavin Howard <yzena.tech@gmail.com> | 2018-12-31 13:21:47 -0700 |
---|---|---|
committer | Gavin Howard <yzena.tech@gmail.com> | 2018-12-31 13:21:47 -0700 |
commit | ecc7fc2f95ffddaadf9ce1ac5e8c9e4fa5af9f52 (patch) | |
tree | caf5d6e7ddae9f3b89dc37b3db51f5179b03619e /src/lex.c | |
parent | 223fa6d8fd41d8ce3565159b3b4d9f4689e5fa01 (diff) | |
download | platform_external_bc-ecc7fc2f95ffddaadf9ce1ac5e8c9e4fa5af9f52.tar.gz platform_external_bc-ecc7fc2f95ffddaadf9ce1ac5e8c9e4fa5af9f52.tar.bz2 platform_external_bc-ecc7fc2f95ffddaadf9ce1ac5e8c9e4fa5af9f52.zip |
Improve error reporting across the board
Diffstat (limited to 'src/lex.c')
-rw-r--r-- | src/lex.c | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -100,7 +100,8 @@ BcStatus bc_lex_number(BcLex *l, char start) { len = i + 1 * !last_pt - bslashes * 2; - if (len > BC_MAX_NUM) return bc_vm_error(BC_ERROR_EXEC_NUM_LEN, l->line); + if (len > BC_MAX_NUM) + return bc_vm_error(BC_ERROR_EXEC_NUM_LEN, l->line, BC_MAX_NUM); bc_vec_npop(&l->str, l->str.len); bc_vec_expand(&l->str, len + 1); @@ -137,7 +138,8 @@ BcStatus bc_lex_name(BcLex *l) { while ((c >= 'a' && c <= 'z') || isdigit(c) || c == '_') c = buf[++i]; - if (i > BC_MAX_STRING) return bc_vm_error(BC_ERROR_EXEC_NAME_LEN, l->line); + if (i > BC_MAX_NAME) + return bc_vm_error(BC_ERROR_EXEC_NAME_LEN, l->line, BC_MAX_NAME); bc_vec_string(&l->str, i, buf); |