microsoft / microsoft/STL

P2900R14 `<contracts>`

Open
#5,286 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

compiler cxx26
Dominant language
C++
Stars
11.1k
Forks
1.7k
Avg merge
4d 15h
Merged PRs (30d)
22

Description

WG21-P2900R14 <contracts>
WG21-P3819R0 Remove std::contracts::contract_violation::evaluation_exception()
WG21-P3886R0 __cpp_lib_replaceable_contract_violation_handler

This is a Core paper with Library impact.

The Core feature-test macro is __cpp_contracts. Library feature-test macros:

#define __cpp_lib_contracts 202502L

// If the contract violation handler is replaceable, otherwise 0:
#define __cpp_lib_replaceable_contract_violation_handler 202603L

My VS-PR-738409 taught the IDE about this new extensionless header.

Note: We are not yet accepting PRs for C++26 features.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading WG21-P2900R14, WG21-P3819R0, and WG21-P3886R0, then review the listed __cpp_contracts and library feature-test macros. The issue names no source files or tests, and states that PRs for C++26 features are not yet being accepted, so there is no actionable completion path here.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.