logoalt Hacker News

afdbcreid • today at 1:29 PM • 2 replies • view on HN

I can't tell if you are sarcastic, but in case you are not:

By Rice's theorem you cannot be sound and complete, i.e. accept all valid programs and reject all invalid ones. Most languages choose to be sound but not complete, i.e. reject all invalid programs but also some valid ones (C and C++ are the notable exception, although most languages have escape hatches). GP was saying that the fix might reject valid programs that compile today. This is true for some existing soundness bugs, but not necessarily for this one specifically.


Replies

bluGill • today at 3:26 PM

Rice's theorem does not apply. This is not about what the compiler does, it is your program. If your program is not sound then it is invalid Rust even if the compiler accepts it and it seems to do the right thing.

That said, I was sarcastic.

➕ show 2 replies
charcircuit • today at 3:33 PM

Rust does not target Turing machines so Rice's theorem does not apply.