6.7. Not yet supported
Two shapes are rejected during resolution with a not yet supported diagnostic rather than lowered, because the alternatives would be an internal error or a silent miscompile:
-
a call to a procedure that
throwsin a nested expression position. Only a whole statement or a whole assignment right-hand side is handled, sos := f()is fine whiles := 1 + f()is rejected; -
a
catchhandler that re-declares its own exception binding, because the substitution that rewrites the binding matches by name and is not scope-aware.