[clang][bytecode] Implement support for `Expr::EvaluateWithSubstitution()` (#204781)
This regresses `Sema/enable_if.c`, which now fails when run with the
bytecode interpreter. We also get 14 more diagnostic differences in
`SemaCXX/builtin-object-size-cxx14.cpp`.
Fixes https://github.com/llvm/llvm-project/issues/138473