On 2025-09-24 15:36, René Ferdinand Rivera Morell wrote:

On Wed, Sep 24, 2025 at 6:10 AM Harald Achitz via Admin <admin@lists.isocpp.org> wrote:
The Swedish SC22 mirror committee TK611/AG09 has discussed the current
working draft of C++26 and identified concerns regarding contract
assertions. We have summarized these in the attached document.

As convener, I see it as my duty to mediate these concerns. I would
therefore appreciate guidance on how to proceed and to ensure that our
experts’ concerns, as well as similar concerns from others, are taken
into account.

From the comments:

Contracts introduce several new build configurations. The impact on the build system and binary
dependency management has not received sufficient focus.

FYI..

I personally don't remember any concerns by build and packaging ecosystem experts on this subject when it's been discussed. Contracts mirror existing practice for binary linking and is easily managed with existing build systems and package managers.


--
-- René Ferdinand Rivera Morell
-- Don't Assume Anything  -- No Supongas Nada
-- Robot Dreams - http://robot-dreams.net

Thanks for the reply. Rene

Having some interest on the build issue myself, I would be thankful to learn about the following topics:

Will it be easily manageable  to tell the linker: hey, give me libfoo with contract assertions enabled, and that is using this special contract handler? And get an error if libfoo in that flavor is not available, but only in others other configuration.

or is it only easily manageable when you build the whole source tree including dependencies with profiles / tripplets, or what ever your control file is.

If you want to provide binary dependencies, does that mean you need to have each build in 4 variations, per contract variations.

And is it even possible to have different contract handlers set, in dependencies, or do people make that up?

What will, for example, Linux distributions add to their build, will it be implementation defined? And I can tell from the binary in the system what it is.

If such questions have been discussed, is there some documentation to read up on the outcome?

/Harald