C++ Logo

sg15

Advanced search

Re: [isocpp-sg15] [isocpp-sg21] P3835 -- Different contract checking for different libraries

From: Ville Voutilainen <ville.voutilainen_at_[hidden]>
Date: Tue, 14 Oct 2025 23:08:01 +0300
On Tue, 14 Oct 2025 at 22:59, Tom Honermann via SG15
<sg15_at_[hidden]> wrote:
> One of the fundamental aspects of p2900 is that the person who write the contract is not the one who selects the semantics for the application.
> Is this aspect of contracts aligned with hardened libraries needs? The discussion seems to reveal that not. And therefore the draft paper mentioned earlier seems to be correct - contracts are not good fit for standard library hardening.
>
> They are, or will be, once either of P3290 (Integrating Existing Assertions With Contracts) or P3400 (Specifying Contract Assertion Properties with Labels) is adopted.

So they aren't, in P2900/C++26.

I quite fail to see what P3290 has to do with this. NDEBUG does not
turn the standard library hardening off.

Received on 2025-10-14 20:08:15