catch half broken #define (statements

This commit is contained in:
Jeremiah Orians 2021-11-06 22:36:02 -04:00
parent 9997d7a275
commit 876ebe7c68
No known key found for this signature in database
GPG Key ID: 6B3A3F198708F894
3 changed files with 19 additions and 7 deletions

View File

@ -179,6 +179,12 @@ int macro_variable()
struct macro_list* hold = lookup_macro(macro_token);
if (NULL != hold)
{
if(NULL == hold->expansion)
{
line_error_token(macro_token);
fputs("hold->expansion is a null\n", stderr);
exit(EXIT_FAILURE);
}
value = strtoint(hold->expansion->s);
}
eat_current_token();
@ -236,6 +242,12 @@ int macro_primary_expr()
if(TRUE == defined_has_paren)
{
if(NULL == macro_token)
{
line_error_token(macro_token);
fputs("unterminated define ( statement\n", stderr);
exit(EXIT_FAILURE);
}
require(')' == macro_token->s[0], "missing close parenthesis for defined()\n");
eat_current_token();
}

View File

@ -212,9 +212,9 @@ eb1f6aab09a1a4966f9f49a518d8aa03ca97aa7c46e443871d758a306671a85e test/results/t
a2cbfd5f76d3be8049c6737e3fa02f191caf29b6885db006fa23f86e6eacc186 test/results/test0106-knight-posix-binary
d75e450e2fcdf19df63f9d6a3fe5e032933e57b33f6f06b39a8ed2f3dc759f17 test/results/test0106-riscv64-binary
473cc504d6cba9eaf648abcf15c83a317ff3f4a7f08f5e8936e3b35b2cc4fbc6 test/results/test0106-x86-binary
c8360bf5cf47fe68593c5163b0d72db2026563cd3ae9d6569b4e359d5ddf5055 test/results/test1000-aarch64-binary
be6b2b9d3c5da922f2c101b1a1ae3140a2dd4077c9326359b7e5eb4ee3941cf5 test/results/test1000-amd64-binary
6023ece6bedd28707824893d08787f4e796d5e13d8dfcdd61a6c5092e6281d77 test/results/test1000-armv7l-binary
57e67dd208599e752088e78c866c9f40a3dde62d8eb39ce879b41f8ab6b1864d test/results/test1000-knight-posix-binary
dd31a53ba38aa7d0520a490ee1b9c170b5be7a5114b6e0c26a802ecd3eccd1e3 test/results/test1000-riscv64-binary
b26a20f63827cf018b47cf256f20fcc6176cf7cfee28d2e114d945477b53a57e test/results/test1000-x86-binary
477b8c9d4a93825224f1a5974a46781c60f2fb5a5c7d1e80a406495261394beb test/results/test1000-aarch64-binary
4333f7916d87482c04691eab6b2ab9777b2d59b9fe4988b021da8776a57c3e8b test/results/test1000-amd64-binary
49008f8515f84b2144df557d3e79a633647012017158fe38ec64886cbfb06d2f test/results/test1000-armv7l-binary
0a68e25f5e77860c6237249b810aaab145a485de22a43c563324f4c6eb44acb2 test/results/test1000-knight-posix-binary
8b19ec018b42fb163b4ae0228e2439cd78efd9d657d70208bbf0d4d2b3655c01 test/results/test1000-riscv64-binary
02da277331c4d6fc9b3365876bb3713bc9a3f417577fd1bac9be2c0d7fa52b82 test/results/test1000-x86-binary

View File

@ -1 +1 @@
051da13047c134784983be80777706b8578fed66c45f46702e0c0492b83e413b test/test1000/proof
2ea3bc29dd584e94a68644dca165722c67466b88b6b3bae3a36e231298c8f020 test/test1000/proof