[clang] [Modules] No transitive source location change (PR #86912)

Jan Svoboda via cfe-commits cfe-commits at lists.llvm.org
Thu Mar 28 11:21:43 PDT 2024


jansvoboda11 wrote:

By default, `SourceLocation` is 32 bits. One bit is used to distinguish macro expansions. Looking at libc++'s module map, it contains 999 top-level modules at this moment. That's 10 bits just to be able to import the (entire) standard library. That leaves 21 bits, restricting local `SourceLocation` space to 2 MB. This doesn't sound feasible. Did I misunderstand?

https://github.com/llvm/llvm-project/pull/86912


More information about the cfe-commits mailing list