On Mon, Sep 4, 2023 at 1:33 PM Ville Voutilainen <ville.voutilainen@gmail.com> wrote:
On Mon, 4 Sept 2023 at 20:19, Brian Bi via Std-Proposals
<std-proposals@lists.isocpp.org> wrote:
> ABI breaks certainly have costs, but not breaking ABI also has costs, and it appears to many people, both within and outside of WG21, that the costs of breaking ABI are overestimated, and the costs of not breaking ABI are underestimated.

Appears? Based on what? I could quantify that ABI break cost to a
dollar precision for various companies if I really had to (because
we've done it accidentally, by packaging with a platform that had a
newer GLIBC that results in packages that don't work on systems
with an older GLIBC, due to an.. *drumroll* ..ABI incompatibility).
What is this disagreeing appearance based on? Hot air?

Is the particular ABI incompatibility that you have mentioned here one that could be caused by any decision WG21 could possibly make? glibc is not written in C++.

Nevertheless, I'm not making the claim that no one ever accurately estimates the costs of any ABI-breaking change. There is no one "cost of breaking ABI"; the cost depends on the particular change in question. Those particular costs typically never receive a numerical estimate.

Here's what usually happens in the C++ standardization process: First, someone gets an idea for a proposal. At some point between the time when they first get that idea and when the proposal gets polled in EWG, someone points out that adopting the proposal would require an ABI break. Most of the time, no one ever puts forth an estimate of the dollar cost of that particular ABI break. Instead, the author simply realizes that the proposal has no chance of getting accepted in the current form. If the ABI break is pointed out while the paper is being discussed in EWG, the result is that the room simply agrees not to poll that particular version of that proposal. The proposal then dies unless the author can find a way to avoid the ABI break. No one estimates the dollar cost of not adopting the proposal, either. Therefore, a numerical comparison is not made between the two costs. Instead, a lot of people simply assume that the former cost outweighs the latter, which is why the proposal is not accepted. Any appearance that one cost outweighs the other is therefore backed by exactly as much evidence as any appearance of the reverse.

I haven't been on the committee for long, so, perhaps there have been particular cases in which someone stood up in EWG and said, "this particular ABI break would cost my company $X" and the discussion reached a consensus that the probable benefits of the proposal could not outweigh this cost. As far as I know, this is not what usually happens.
--
Brian Bi