Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions docs/beman_standard.md
Original file line number Diff line number Diff line change
Expand Up @@ -864,3 +864,7 @@ for an example.
### **[cpp.extension_identifiers]**

**Recommendation**: For functionality that is not being recommended for standardization, but is an extension provided by the library, its identifiers should be prefixed with `ext_`.

### **[cpp.min_std_version]**

**Recommendation**: Beman authors can choose the minimum C++ standard version their library will support. C++20 is the recommended default because concepts and other C++20 features significantly simplify both implementation and code review. Additionally, most future Beman libraries target C++29 or beyond, making C++20 a practical baseline. That said, supporting C++17 is also reasonable if an author has specific motivation to do so. Some libraries may require a higher minimum version for features like C++26 reflection or other recent language capabilities. The readme should prominently display the minimum supported C++ standard version so users can quickly assess compatibility with their projects. Note that C++ modules are only supported in C++23 and later due to `import std`, and this requirement should be clearly documented in the readme as well.