This requires adding a new opcode for PointerToBoolean casts, since we otherwise emit too many diagnostics. But that fixes an older problem when casting weak pointers to bool.
"Interp" clashes with the clang interpreter and people often confuse this.