Clever system !
Clever system !
Posted Dec 4, 2024 16:30 UTC (Wed) by mathstuf (subscriber, #69389)In reply to: Clever system ! by ebee_matteo
Parent article: Rust's incremental compiler architecture
No one has written anything about what this looks like in the Itanium ABI (or any other for that matter). AFAIK, modules still need to ship the module sources (just like headers before). Basically, PIMPL is still relevant and no, modules don't change the decl/impl file split. I don't see any appetite for no-module-interface library deployment from implementations, but maybe I'm just not listening in the right places.
> There is an experimental draft of a cross-compiler ABI for this
Are you talking about Microsoft's IFC format? That still doesn't resolve the "need to ship module source files" problem.
> C++ does NOT define a stable ABI
Nor will the language (in any likelihood). What is stable is the implementations' guarantees about how they generate ABIs when compiling. That has been sufficient so far.
(FD, should have mentioned in the prior comment, but I was rushing out the door: I implemented C++20 module support in CMake, co-chair WG21's SG15 Tooling, and am very involved in "how to build modules" processes as I hear about them.)