[issue31421] convert tryCatch* to macros to avoid closure allocations and various sorts of boxing (20%-40% performance improvement with Interchange G2)