P4428R0 — Contract concerns and where they are addressed
EWG
Several concerns have been raised about the C++26 contracts facility, [P2900](https://wg21.link/p2900), most compactly in [P3173R0](https://wg21.link/p3173r0), "P2900R6 May Be Minimal, but It Is Not Viable": that it doesn't prioritize safety, that the evaluation of a contract assertion can have undefined behavior, that it doesn't support virtual functions and function pointers, and that it isn't applied to the standard library. A further concern, raised separately, is that P2900 leaves too much implementation-defined. This paper is an overview: for each concern, which paper addresses it, and how. Each of those papers is backed by an implementation, in a GCC branch that can be tried on Compiler Explorer.