mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-09-24 20:30:14 +01:00
This reduces object sizes which is desirable for linking speed. zygoloid did some analysis to determine if any of our code requires RTTI for `dynamic_cast` here: https://github.com/carbon-language/carbon-lang/pull/7532#discussion_r3611196721: > The only thing I found is that libc++ requires dynamic_cast in order for std::print to correctly write Unicode to terminals on Windows We use `llvm::print` functionality, not `std::print`, so this doesn't affect our toolchain. Note that libc++ and libc++abi are built with RTTI enabled. It is explicitly allowed to use different compiler flags when building these libraries even though they share some headers with users of the libraries, so this does not cause ODR violations.