You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Take for example tests/chapter_9/invalid_types/conflicting_local_function_declaration.c. If compilation fails during linking because of the missing definition of foo, the test will still succeed, even though the compiler did not catch the conflicting declaration.
The text was updated successfully, but these errors were encountered:
There are two ways to work around this issue for now and make sure these tests still fail:
Test an intermediate stage with the --stage option. Your compiler will need a --validate option that tells it validate the program and return with a 0 or non-zero exit code based on the result, but not produce any output files. Then you can run the test script with --stage validate to just make sure validation is working properly.
Use the --expected-error-codes option to specify the exit codes your compiler uses when it rejects an invalid program. As long as those aren't the same exit codes it uses when it hits a linker error, that should address this issue.
Take for example
tests/chapter_9/invalid_types/conflicting_local_function_declaration.c
. If compilation fails during linking because of the missing definition offoo
, the test will still succeed, even though the compiler did not catch the conflicting declaration.The text was updated successfully, but these errors were encountered: