Commit Graph

2152 Commits (5ff92185f36c768eca3f6686d9a589a0f8ad8f6a)
 

Author SHA1 Message Date
Sergey Zubkov 5ff92185f3 we should be able to publish the page from main branch 2 years ago
Sergey Zubkov 019ec5df95 update date 2 years ago
Sergey Zubkov 4d339c0b95
Create jekyll-gh-pages.yml 2 years ago
Herb Sutter 46c70fe2e5 Make exception safety `new` notes consistent, and mention that problem was fixed in C++17
Closes #2197
2 years ago
Herb Sutter 9656da8cb5 Add missing links
Closes #2196
2 years ago
Piotr Idzik 6435165ea0
Update link to MISRA C++ Guidelines (#2194)
* Update link to MISRA C++ 2008 Guidelines

* Link to MISRA C++ 2023 Guidelines
2 years ago
Herb Sutter 6c68bf8f34 Add note about pointerlike indirections, and remove incorrect destructor note
Closes #2183
Closes #2188
2 years ago
Herb Sutter 4f723b0fff
Add "take a copy for immediate local use" case to F.16 (#2172)
Closes #2170
2 years ago
Paul Jansen d76efeb645
Removed confusing comments (#2076) (#2179) 2 years ago
Jan Schultke c91ea43aba
Improve reasoning and examples for F.48 (#2100)
* fix incorrect reason for F.48

* distinguish rvo and nrvo

* the issue is about local, so limiting example to local

---------

Co-authored-by: Sergey Zubkov <cubbi@cubbi.com>
2 years ago
1024 2a2581cc95
R.3: Fill in placeholder link (#2173)
* fill in placeholder link

* fixed a typo
2 years ago
Herb Sutter 1b37b50162 Make `suppress` tag a string literal, closes #2042 2 years ago
Herb Sutter 13176c69de Revert adding short anchors, and keep fixes to avoid `{{`
`{{` interferes with rendering the page
2 years ago
Herb Sutter acf08ddd46 Add `#pNN` anchors for P section 2 years ago
Jan Schultke 631eccd444
F.21 Don't return tuples (#2166)
* F.21 don't return tuples

* F.21 implement Herb's suggestions

* Mini-rebase for spell check fix

* elaborate on optional/expected

Co-authored-by: Jonathan Wakely <github@kayari.org>

* improve wording in one sentence

Co-authored-by: Jonathan Wakely <github@kayari.org>

* fix incorrect code transformation

Co-authored-by: Jonathan Wakely <github@kayari.org>

* fix missing word

---------

Co-authored-by: Herb Sutter <herb.sutter@gmail.com>
Co-authored-by: Jonathan Wakely <github@kayari.org>
2 years ago
Herb Sutter e784212ef0 Fix spell check regression 2 years ago
Sergey Zubkov fcda019d0b fix CI 2 years ago
Herb Sutter e44d35b55c Fix F.27 example, closes #2171 2 years ago
Jan Schultke 41426a1a5f
#1191 replace member variable with data member (#2087)
Co-authored-by: Herb Sutter <herb.sutter@gmail.com>
2 years ago
Jan Schultke 85e2fa321f
fix missing forward for function object parameter (#2092) 2 years ago
1024 48d57dc6a2
added missing title to GSL.owner link (#2156) 2 years ago
Amir Livneh 0e5b13b543
Fix typos (#2158) 2 years ago
A. Jiang 0f1e36cf06
Use the term "default member initializer" (#2161)
without changing the anchor.
2 years ago
Niels Dekker 8789617b23
ES.87 (redundant `==` or `!=`) Fix dynamic_cast to Circle pointer (#2168)
The second ES.87 example seemed to mistakenly assume that `Circle` is pointer type, by the way it was using `dynamic_cast`. However, `Circle` is meant to be a class type instead. This fix is consistent with other examples, that also do `dynamic_cast<Circle*>`.
2 years ago
Sergey Zubkov e49158aa7e update date 2 years ago
Sleep_AllDay 1bdb43e5c7
ES.30 fix example code (#2143)
* ES.30 fix example code 

The example should be passing in a constexpr and validating it at compile time like a macro, but instead passes a unknown value at compile time. Which may cause mislead and the code doesn't even work.

Ref: #2136

* Update CppCoreGuidelines.md

Used enums instead of raw numbers.
2 years ago
bgloyer 56e5b42eee
Con.1 Issue #1905 Return local const (#2114)
* Con.1 const return

* minor
2 years ago
Jan Schultke e694c3cd04
Modernize uses of POD types (#2120)
* modernize uses of POD types

* update isocpp.dic
2 years ago
Kimi MA 77680bff2b
fix NL.9 ALL_CAPS does not apply to non-macro symbolic constants (#2130)
* fix NL.9 ALL_CAPS does not apply to non-macro symbolic constants

* Update CppCoreGuidelines.md

fix according to comment
2 years ago
Jan Schultke 9b9eeccf3a
NL.8: elaborate on reserved identifiers (#2131)
* NL.8: elaborate on reserved identifiers

* Update CppCoreGuidelines.md

* Update CppCoreGuidelines.md

* Update CppCoreGuidelines.md

---------

Co-authored-by: Herb Sutter <herb.sutter@gmail.com>
2 years ago
Timm Knape 6d96d8e09d
I.30: use const c-string to pass filename and input string in example (#2140)
to signal that they will not modified
2 years ago
Timm Knape 4ad63d7d34
F.21 add loop increment in bad example (#2141)
to mimic the previous examples and avoid an infinite loop.
2 years ago
Nicolas van Kempen b6363bbf11
Fix DeprecationWarning for cgi package (#2148) 2 years ago
apenn-msft 2a3690d1e3
Use portable header identifiers (#2149)
* SF.13  Use portable header identifiers in `#include` statements

add a new rule governing how to compose portable header path identifiers such that they respect proper casing (<vector>, not <VECTOR>) and portable path separators ('/')

* anchor

* fix typos

* fix warnings

* nit

* nit

* nit

* normalize on 'util'

* clean up wording

* Update CppCoreGuidelines.md

---------

Co-authored-by: Herb Sutter <herb.sutter@gmail.com>
2 years ago
Werner Henze 2d87c45e4b
ES.23: change example code to better match the rule (#2150)
The example suggests that `int z = gsl::narrow_cast<int>(7.9);;` is OK. The rule says "Use `=` only when you are sure that there can be no narrowing conversions.", which matches, but is also says "For built-in arithmetic types, use `=` only with `auto`.", and this is not respected here. So replace the one line with both possibilities suggested by the rule.

Co-authored-by: Werner Henze <w.henze@avm.de>
2 years ago
Werner Henze a43285d95a
Make example code adhere to C.65 (#2151)
C.65 requires move assignment to be safe for self-assignment. The given example is not safe for self-assignment as given right now. This commit fixes this.

Co-authored-by: Werner Henze <w.henze@avm.de>
2 years ago
Raymond Chen 27e662bebb
ES.61 clarify wording (#2137)
The original text was "If the `new` and the `delete` are in the same scope, mistakes can be flagged." This has been [misinterpreted](https://stackoverflow.com/q/75905524) to mean "Any `new` and `delete` in the same scope is a mistake and should be flagged."

Reword the Enforcement clauses to follow the pattern established by the other Enforcement clauses: "Flag (bad thing)". Also, call the issue a "mismatch" rather than a "mistake", so that it is more clear that the underlying issue is the mismatch between scalar and array new/deletion.
2 years ago
Timm Knape 5eb1467d5e
I.12: use a const string as mentioned in the text 2 years ago
antcolag b43874936f
ES.34: use the previously declared "const char * is" 2 years ago
bgloyer b5adbd2564
F_3 void auto (#2125) 2 years ago
MikhailBerezhanov 7c9dd4dda8
dual hierarchy example: interface hierarchies fix (#2122)
Co-authored-by: Mikhail Berezhanov <mpb@martistel.com>
2 years ago
Xavier1113 e1b17ec9a5
C.181 Fix missing type specifier (#2117) 2 years ago
Xavier1113 f2485c56a1
Fix variable name in example (#2116) 2 years ago
Eisenwave efbc482f0d
Fix missing noexcept specifiers (#2102) 3 years ago
Eisenwave 892b8ea7f3
fix stray inline link (#2104) 3 years ago
Eisenwave fe3e83e648
fix memory leak in example of C.66 (#2096) 3 years ago
Eisenwave b11fbd0195
replace "modulo arithmetic" with "modular arithmetic" (#2088) 3 years ago
Eisenwave 68f56f0a34
fix missing return *this (#2097) 3 years ago
Eisenwave 95aca76777
add spaces in requires expressions (#2098) 3 years ago
Eisenwave a80c2a6f36
fix ill-formed example C.65 (missing noexcept on declaration) (#2101) 3 years ago