diff --git a/cc_types.c b/cc_types.c index 64c86fc..c0581ad 100644 --- a/cc_types.c +++ b/cc_types.c @@ -299,6 +299,12 @@ struct type* type_name(void) require(NULL != global_token, "unfinished type definition in extern\n"); } + if(match("const", global_token->s)) + { + global_token = global_token->next; + require(NULL != global_token, "unfinished type definition in const\n"); + } + if(match("struct", global_token->s)) { global_token = global_token->next; diff --git a/test/test.answers b/test/test.answers index d88bcf7..d70810c 100644 --- a/test/test.answers +++ b/test/test.answers @@ -287,10 +287,10 @@ e9fa237a2c4d945490563795fee3adeb394171d65a6025c952c818941d1b0ee6 test/results/t e6bb2bfffabcb09bdf681fc63d03d039484e4ce3a8f6dcb4d616d6d02dc3d8c9 test/results/test0106-riscv32-binary ee0044cd67ad632f99d532f1cbfca9ac6c29f2e07eedf28a71110bd67edc6fae test/results/test0106-riscv64-binary d731bc662f99ba7413a10b112662083a3e1bf31e959e08dc84b57b23f3ef31a7 test/results/test0106-x86-binary -3a5f3fd5c4f8ff2f6770cb3d7484537f2defd306071323020f78a93b60be973f test/results/test1000-aarch64-binary -1dbb08aec01b951819b03eb3feb253da3d67b021609d756569a9885cde1dfcdf test/results/test1000-amd64-binary -60a9c2c9678d805576ed6a84a20807f4a3ee64dded3e1b4839caf6ebc493828d test/results/test1000-armv7l-binary -9946ce4f52de35f6234833a5fd382632b97be438dccf67db1f41d2e60998b013 test/results/test1000-knight-posix-binary -4a071222fc53e3270dc197eebe21d91439c8af510497bb0e24535da09a4bdfc5 test/results/test1000-riscv32-binary -e50eebfa59b5eea601554f12243bb1d0fee0d382f0652d6c681bc43a36aa68eb test/results/test1000-riscv64-binary -e355316450658199c0ce764dde449953dc4c10aa6e2b081c7c8c96fb0b7786f8 test/results/test1000-x86-binary +33da326c081aec467970777f3f0398a323a660ffd1eac4e58da497d133f48c94 test/results/test1000-aarch64-binary +7eabc4fa17cd826253666db749b29fb8ff6d8ae4bfd201b7fe240fb8234d0762 test/results/test1000-amd64-binary +7b9653534d46da6f2bccf4be2ab1dc6a643b3cec4ea3fb78a083fdb1f9b2ee7d test/results/test1000-armv7l-binary +b6fd07541fe69bc5b9376fa7ab98e3de44d6dcfc73ec48663e829624f027ab26 test/results/test1000-knight-posix-binary +101127c452a65f1489bc7ed687446769626db87a55e07d919f10324c7165754b test/results/test1000-riscv32-binary +37637351854a6163aff980fdf13f843abc83124e742c786b7a07f6ab840fc322 test/results/test1000-riscv64-binary +e83770287ee672fb3b91f9b597ed6cb4a95a08e1fee0adbf02974c9cd6e65588 test/results/test1000-x86-binary diff --git a/test/test0014/basic_args.c b/test/test0014/basic_args.c index c0b4fa2..304211a 100644 --- a/test/test0014/basic_args.c +++ b/test/test0014/basic_args.c @@ -17,7 +17,7 @@ #include #include -void write_string(char* a) +void write_string(const char* a) { while(0 != a[0]) { diff --git a/test/test1000/proof.answer b/test/test1000/proof.answer index 4328a48..4d37ab7 100644 --- a/test/test1000/proof.answer +++ b/test/test1000/proof.answer @@ -1 +1 @@ -e17a29adcf2dddd2b270da9b078303242e49cc32990f6875fe2fd8e009a9eb05 test/test1000/proof +56f3c36219f77119146207d170d962e87ba66ab5284070800620a2519e3c4986 test/test1000/proof