diff --git a/cc_core.c b/cc_core.c index 95628ac..c35c4d1 100644 --- a/cc_core.c +++ b/cc_core.c @@ -46,6 +46,7 @@ char* parse_string(char* string); int escape_lookup(char* c); int numerate_string(char *a); void require(int bool, char* error); +struct token_list* reverse_list(struct token_list* head); /* Host touchy function will need custom on 64bit systems*/ int fixup_int32(int a); @@ -1895,9 +1896,12 @@ new_type: goto new_type; } -void recursive_output(struct token_list* i, FILE* out) +void recursive_output(struct token_list* head, FILE* out) { - if(NULL == i) return; - recursive_output(i->next, out); - file_print(i->s, out); + struct token_list* i = reverse_list(head); + while(NULL != i) + { + file_print(i->s, out); + i = i->next; + } } diff --git a/test/test.answers b/test/test.answers index af39801..31ab284 100644 --- a/test/test.answers +++ b/test/test.answers @@ -169,8 +169,8 @@ ecfba440594147303a8c16a144498f4be517ec2f02bc440d0d21075e6a8bc8d3 test/results/t 99cb6024b886c9dc5ecaf38826dd70a3e823c3a647d20c5ccd2848628e54409f test/results/test0106-knight-native-binary cad614f909f2b9ac0279b7b508193836bea3a050cecf987448d378f62f6af916 test/results/test0106-knight-posix-binary c1f58b9b99e1d62814d911a853cce82c2e8220cdadf164c090bd0f3bf4d11caa test/results/test0106-x86-binary -f2a7386688ebcc4de77eebebbced54910ecb6cdee430b584fdb7a3b24ae55db5 test/results/test1000-aarch64-binary -b638c11a808733c3baab6ccb6c2160ba08e7dab716bfad4020be6d175de62200 test/results/test1000-amd64-binary -ee3c34679065a686821d236321196fe34bed95f9c6db1d2d77363e8dd2a0a9c2 test/results/test1000-armv7l-binary -4a57546d2efaf9afa8ae45946c31d9bbd692b1eb716d37e6c3a05baae06ded27 test/results/test1000-knight-posix-binary -07338e5bb20d1537944cae3c7fe975c2c25288d0d28e5b8ab7b0e6237a2084f3 test/results/test1000-x86-binary +d6186757e033c896f71a656bdf9c04802cb2d1ae70272d68ed8cd18d51ef0cff test/results/test1000-aarch64-binary +b8bbd62a6f6d720ee643504931e5a20b343d4a4e27dd5b47861ecad76e08cc62 test/results/test1000-amd64-binary +dd4c944ffeacae83bd229b69bbe82e849a3390aa6107dddcc83b8d7220f7a633 test/results/test1000-armv7l-binary +6e89d46094b0fad09c3b1fa158ce2c79c6d6f4e568d9cfd696b0abc7332e8544 test/results/test1000-knight-posix-binary +74e316ca24d9309f9ab1f8c3a179fc97f70188c1fe06561adfb451ea4022b653 test/results/test1000-x86-binary diff --git a/test/test1000/proof.answer b/test/test1000/proof.answer index c12ea8e..06f8e9b 100644 --- a/test/test1000/proof.answer +++ b/test/test1000/proof.answer @@ -1 +1 @@ -d7413cb55a8096e516de963c2401c65df55e18363f6180a188ef8a50a7ab2695 test/test1000/proof +926e28a7c05db19f84afea41eb65ba59f1a08c10ad1b45875cfa37d5076e5112 test/test1000/proof