C++ Logo

sg15

Advanced search

Re: [isocpp-sg15] [isocpp-sg21] [isocpp-admin] Swedish mirror committee consideration on the current working draft

From: René Ferdinand Rivera Morell <grafikrobot_at_[hidden]>
Date: Fri, 3 Oct 2025 17:42:45 -0500
On Fri, Oct 3, 2025 at 4:57 PM Ville Voutilainen via SG21 <
sg21_at_[hidden]> wrote:

> On Fri, 3 Oct 2025 at 01:10, Michael Spencer via SG15
> <sg15_at_[hidden]> wrote:
> >
> > We looked at a few different papers about contracts focusing mostly on
> the implementability of mixing checking modes. From the github tracking:
> >
> > > SG15 discussed various implementation strategies for contracts with a
> few Itanium C++ ABI people, and a contracts implementer in the room. We had
> no tooling related concerns with contracts, but believe that the best ABI
> would require linker changes to get the best performance.
> >
> > We had implementers from EDG, GCC, and Clang present.
> >
> > From what I recall nobody had concerns that contracts is
> unimplementable, there was mostly discussion around how optimal the
> implementation could be in the presence of mixed modes. Contracts allowing
> multiple evaluation of checks makes a lot more implementation strategies
> viable. Inline functions (including template instantiations) can end up
> with any semantic that appeared in the program, but the standard also
> allows this, so that's fine.
> >
> > I don't recall going into detail about build systems, but I do recall
> discussion of how this is largely the same problem as any other benign ODR
> violation that build systems handle today, such as mixing language versions
> or exceptions on vs. off. The standard just blesses this in the right ways
> to not technically be an ODR violation.
> >
> > So to be precise I would say that nobody in the SG15 meetings where this
> was discussed expressed strong concerns about the implementability of
> contracts as specified in P2900 from a compiler or build system perspective.
>
> I'm unaware of any concerns about contracts being about
> implementability in build systems.


So you disagree with concerns in the NB comment I started out this thread
with?

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


..


> The concerns seem to be about
> having
> to configure the contract semantics in the build system as opposed to
> being able to do it in source code.
>

Can you reference the NB comment(s) (and possibly text in related NB
papers) raising those concerns?

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

Received on 2025-10-03 22:43:02