Include the canonical libc Api.hpp (which also provides the
exceptions/Runtime.hpp cxa declarations) instead of test-local export
declarations: the bad_optional_access ctor/dtor take
LibcException::ExceptionObject*, __cxa_throw takes std::type_info*, and
__cxa_current_exception_type returns std::type_info*. The exported
records are declared as std::type_info / __cxxabiv1::__si_class_type_info
matching their TypeRecord/FundamentalTypeRecord layout, and the
catch-type callback uses the production
bool(const std::type_info*, const std::type_info*, void**, unsigned)
signature from TypeInfo.cpp.
Cover the new _ZTI records the way a guest catch would: the vtable
address point, the fundamental-type kind reachable through vtable[-1],
__do_catch matching and non-matching pairs, and a throw of int through
__cxa_throw that a host catch resolves back to _ZTIi.
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>