fix interpreter validity check on Box Follow-up to https://github.com/rust-lang/rust/pull/98554: avoid walking over parts of the value twice. And then move all that logic into the general visitor so not each visitor implementation has to deal with it...