Skip to content

Commit

Permalink
Modify CFamily rules: CPP-4080 Refresh and standardize CppCoreGuideli…
Browse files Browse the repository at this point in the history
…nes references (#3514)

Update all links to C++ Core Guidelines to `e49158a`.

Refresh done using the following script and some manual edits:
https://github.com/SonarSource/languages-experimental-tooling/blob/db76e34e74644a6bce0cb6fb7e7ec35fff6e4671/personal/fred-tingaud/rspec/refresh-cppcoreguidelines.py

When re-using this script, be mindful that:
 - it does not cover `shared_content`
 - it does not properly escape inline code in links (e.g., "[=]" or "`mutex`es")
 - it does not change `C++` to `{cpp}` in link titles.

Co-authored-by: Marco Borgeaud <marco.borgeaud@sonarsource.com>
  • Loading branch information
1 parent 6610704 commit 22b4470
Show file tree
Hide file tree
Showing 99 changed files with 117 additions and 118 deletions.
2 changes: 1 addition & 1 deletion docs/link_formatting.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ When web pages have massively long names like "Java™ Platform, Standard Editio
* Azure Documentation - https://learn.microsoft.com/en-us/azure/?product=popular
* CERT - https://wiki.sei.cmu.edu/confluence/display/seccode
* {cpp} reference - https://en.cppreference.com/w/
* C++ Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md
* CVE - https://cve.mitre.org
* CWE - https://cwe.mitre.org
* Docker Documentation - https://docs.docker.com/
Expand Down
2 changes: 1 addition & 1 deletion rules/S1003/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ The issue only happens if the using directive is at global scope or at namespace
== Resources

* MISRA {cpp}:2008, 7-3-6 - using-directives and using-declarations (excluding class scope or function scope using-declarations) shall not be used in header files.
* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#sf7-dont-write-using-namespace-at-global-scope-in-a-header-file[{cpp} Core Guidelines SF.7] - Dont write ``++using namespace++`` at global scope in a header file
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#sf7-dont-write-using-namespace-at-global-scope-in-a-header-file[SF.7: Don't write `using namespace` at global scope in a header file]


ifdef::env-github,rspecator-view[]
Expand Down
2 changes: 1 addition & 1 deletion rules/S1032/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ bool isMax(T t){
== Resources

* MISRA {cpp}:2008, 14-8-1
* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#t144-dont-specialize-function-templates[{cpp} Core Guidelines T.144] - Dont specialize function templates
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#t144-dont-specialize-function-templates[T.144: Don't specialize function templates]


ifdef::env-github,rspecator-view[]
Expand Down
2 changes: 1 addition & 1 deletion rules/S1044/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ try {
* CERT - https://wiki.sei.cmu.edu/confluence/x/SXs-BQ[ERR61-CPP. Catch exceptions by lvalue reference]

=== External coding guidelines
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#e15-catch-exceptions-from-a-hierarchy-by-reference[E.15 Catch exceptions from a hierarchy by reference]
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#e15-throw-by-value-catch-exceptions-from-a-hierarchy-by-reference[E.15: Throw by value, catch exceptions from a hierarchy by reference]
* MISRA {cpp}:2008, 15-3-5 - A class type exception shall always be caught by reference

=== Related rules
Expand Down
2 changes: 1 addition & 1 deletion rules/S107/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ include::../rule.adoc[]

== Resources

* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#i23-keep-the-number-of-function-arguments-low[{cpp} Core Guidelines I.23]: Keep the number of function arguments low
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#i23-keep-the-number-of-function-arguments-low[I.23: Keep the number of function arguments low]

ifdef::env-github,rspecator-view[]

Expand Down
2 changes: 1 addition & 1 deletion rules/S112/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ void checkState(S state) {

=== External coding guidelines

* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#Re-exception-types[E.14: Use purpose-designed user-defined types as exceptions (not built-in types)]
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#e14-use-purpose-designed-user-defined-types-as-exceptions-not-built-in-types[E.14: Use purpose-designed user-defined types as exceptions (not built-in types)]


=== Related rules
Expand Down
2 changes: 1 addition & 1 deletion rules/S1155/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ void fun(const std::vector<int> &myVector) {

=== External coding guidelines

* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#reason-382[T.143 - Don't write unintentionally nongeneric code]
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#t143-dont-write-unintentionally-non-generic-code[T.143: Don't write unintentionally non-generic code]

ifdef::env-github,rspecator-view[]

Expand Down
2 changes: 1 addition & 1 deletion rules/S1172/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ void doSomething(int a) {
* MISRA {cpp}:2008, 0-1-11 - There shall be no unused parameters (named or unnamed) in nonvirtual functions.
* MISRA C:2012, 2.7 - There should be no unused parameters in functions
* https://wiki.sei.cmu.edu/confluence/x/5dUxBQ[CERT, MSC12-C.] - Detect and remove code that has no effect or is never executed
* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#f9-unused-parameters-should-be-unnamed[{cpp} Core Guidelines - F.9] - Unused parameters should be unnamed
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#f9-unused-parameters-should-be-unnamed[F.9: Unused parameters should be unnamed]

ifdef::env-github,rspecator-view[]

Expand Down
2 changes: 1 addition & 1 deletion rules/S1181/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ Additionally, if the ``++catch++`` handler is throwing an exception (either the
== Resources

* https://cwe.mitre.org/data/definitions/396[MITRE, CWE-396] - Declaration of Catch for Generic Exception
* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#Re-exception-types[{cpp} Core Guidelines E.14] - Use purpose-designed user-defined types as exceptions (not built-in types)
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#e14-use-purpose-designed-user-defined-types-as-exceptions-not-built-in-types[E.14: Use purpose-designed user-defined types as exceptions (not built-in types)]


ifdef::env-github,rspecator-view[]
Expand Down
2 changes: 1 addition & 1 deletion rules/S1231/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ auto p2 = std::make_unique<Person>("Bjarne"); // Compliant

== Resources

* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#r10-avoid-malloc-and-free[{cpp} Core Guidelines R.10] - Avoid malloc() and free()
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#r10-avoid-malloc-and-free[R.10: Avoid `malloc()` and `free()`]



Expand Down
4 changes: 2 additions & 2 deletions rules/S1235/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,6 @@ public:

* https://wiki.sei.cmu.edu/confluence/x/5Xs-BQ[CERT, OOP52-CPP.] - Do not delete a polymorphic object without a virtual destructor
* http://www.gotw.ca/publications/mill18.htm[Virtuality article]
* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#c35-a-base-class-destructor-should-be-either-public-and-virtual-or-protected-and-nonvirtual[{cpp} Core Guidelines C.35] - A base class destructor should be either public and virtual, or protected and nonvirtual
* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#c127-a-class-with-a-virtual-function-should-have-a-virtual-or-protected-destructor[{cpp} Core Guidelines C.127] - A class with a virtual function should have a virtual or protected destructor
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#c35-a-base-class-destructor-should-be-either-public-and-virtual-or-protected-and-non-virtual[C.35: A base class destructor should be either public and virtual, or protected and non-virtual]
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#c127-a-class-with-a-virtual-function-should-have-a-virtual-or-protected-destructor[C.127: A class with a virtual function should have a virtual or protected destructor]

4 changes: 2 additions & 2 deletions rules/S1236/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,6 @@ public:

== Resources

* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#c60-make-copy-assignment-non-virtual-take-the-parameter-by-const-and-return-by-non-const[{cpp} Core Guidelines C.60] - Make copy assignment non-virtual, take the parameter by const&, and return by non-const&
* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#c63-make-move-assignment-non-virtual-take-the-parameter-by\--and-return-by-non-const-[{cpp} Core Guidelines C.63] - Make move assignment non-virtual, take the parameter by &&, and return by non-const &
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#c60-make-copy-assignment-non-virtual-take-the-parameter-by-const-and-return-by-non-const[C.60: Make copy assignment non-`virtual`, take the parameter by `const&`, and return by non-`const&`]
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#c63-make-move-assignment-non-virtual-take-the-parameter-by--and-return-by-non-const[C.63: Make move assignment non-`virtual`, take the parameter by `&&`, and return by non-`const&`]

2 changes: 1 addition & 1 deletion rules/S1238/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ because passing arguments by reference to a coroutine often leads to dangling re

== Resources

* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#f16-for-in-parameters-pass-cheaply-copied-types-by-value-and-others-by-reference-to-const[{cpp} Core Guidelines F.16] - For “in” parameters, pass cheaply-copied types by value and others by reference to ``++const++``
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#f16-for-in-parameters-pass-cheaply-copied-types-by-value-and-others-by-reference-to-const[F.16: For "in" parameters, pass cheaply-copied types by value and others by reference to `const`]

ifdef::env-github,rspecator-view[]

Expand Down
2 changes: 1 addition & 1 deletion rules/S1242/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ void stopServer(Base *obj) {

== Resources

* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#c138-create-an-overload-set-for-a-derived-class-and-its-bases-with-using[{cpp} Core Guidelines C.138] - Create an overload set for a derived class and its bases with using
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#c138-create-an-overload-set-for-a-derived-class-and-its-bases-with-using[C.138: Create an overload set for a derived class and its bases with `using`]


ifdef::env-github,rspecator-view[]
Expand Down
2 changes: 1 addition & 1 deletion rules/S1265/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ void f() {

=== External coding guidelines

* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#r15-always-overload-matched-allocationdeallocation-pairs[R.15: Always overload matched allocation/deallocation pairs]
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#r15-always-overload-matched-allocationdeallocation-pairs[R.15: Always overload matched allocation/deallocation pairs]

=== Related rules

Expand Down
2 changes: 1 addition & 1 deletion rules/S1270/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -29,5 +29,5 @@ int fun() {

== Resources

* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#Rl-void[{cpp} Core Guidelines NL.25] - Don't use void as an argument type
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#nl25-dont-use-void-as-an-argument-type[NL.25: Don't use `void` as an argument type]

2 changes: 1 addition & 1 deletion rules/S1659/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ int &j3 = i2;

* MISRA {cpp}:2008, 8-0-1 - An init-declarator-list or a member-declarator-list shall consist of a single init-declarator or member-declarator respectively

* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#es10-declare-one-name-only-per-declaration[{cpp} Core Guidelines - ES.10] - Declare one name (only) per declaration
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#es10-declare-one-name-only-per-declaration[ES.10: Declare one name (only) per declaration]

ifdef::env-github,rspecator-view[]

Expand Down
2 changes: 1 addition & 1 deletion rules/S1699/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,6 @@ class Child : public Parent {
== Resources

* https://wiki.sei.cmu.edu/confluence/x/6ns-BQ[CERT, OOP50-CPP.] - Do not invoke virtual functions from constructors or destructors
* https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Rc-factory[{cpp} Core Guidelines C.50] - Use a factory function if you need virtual behavior during initialization
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#c50-use-a-factory-function-if-you-need-virtual-behavior-during-initialization[C.50: Use a factory function if you need "virtual behavior" during initialization]

include::../rspecator.adoc[]
4 changes: 2 additions & 2 deletions rules/S1709/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,8 @@ Additionally, developers can use `explicit(false)` to mark constructors or conve
== Resources

* MISRA {cpp}:2008, 12-1-3 - All constructors that are callable with a single argument of fundamental type shall be declared ``++explicit++``.
* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#c46-by-default-declare-single-argument-constructors-explicit[{cpp} Core Guidelines C.46] - By default, declare single-argument constructors explicit
* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#c164-avoid-implicit-conversion-operators[{cpp} Core Guidelines C.164] - Avoid implicit conversion operators
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#c46-by-default-declare-single-argument-constructors-explicit[C.46: By default, declare single-argument constructors explicit]
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#c164-avoid-implicit-conversion-operators[C.164: Avoid implicit conversion operators]



Expand Down
2 changes: 1 addition & 1 deletion rules/S1749/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ signed long int i;

== Resources

* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#Rl-const[{cpp} Core Guidelines NL.26] - Use conventional ``++const++`` notation
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#nl26-use-conventional-const-notation[NL.26: Use conventional `const` notation]


ifdef::env-github,rspecator-view[]
Expand Down
2 changes: 1 addition & 1 deletion rules/S2107/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -270,7 +270,7 @@ struct ContainerPartial {

=== External coding guidelines

* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#c41-a-constructor-should-create-a-fully-initialized-object[C.41: A constructor should create a fully initialized object]
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#c41-a-constructor-should-create-a-fully-initialized-object[C.41: A constructor should create a fully initialized object]

=== Related rules

Expand Down
2 changes: 1 addition & 1 deletion rules/S2145/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ public void doSomething(int i) {

== Resources

* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#es70-prefer-a-switch-statement-to-an-if-statement-when-there-is-a-choice[{cpp} Core Guidelines ES.70]: Prefer a switch-statement to an if-statement when there is a choice
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#es70-prefer-a-switch-statement-to-an-if-statement-when-there-is-a-choice[ES.70: Prefer a `switch`-statement to an `if`-statement when there is a choice]

ifdef::env-github,rspecator-view[]

Expand Down
4 changes: 2 additions & 2 deletions rules/S2259/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -119,8 +119,8 @@ include::../../../shared_content/cfamily/reference_over_nonnull_pointer.adoc[]

=== External coding guidelines

* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md[F.16: For "in" parameters, pass cheaply-copied types by value and others by reference to const]
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md[F.17: For "in-out" parameters, pass by reference to non-const]
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#f16-for-in-parameters-pass-cheaply-copied-types-by-value-and-others-by-reference-to-const[F.16: For "in" parameters, pass cheaply-copied types by value and others by reference to `const`]
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#f17-for-in-out-parameters-pass-by-reference-to-non-const[F.17: For "in-out" parameters, pass by reference to non-`const`]


=== Related rules
Expand Down
2 changes: 1 addition & 1 deletion rules/S2303/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ If a derived class overrides a function with a dynamic exception specification,

== Resources

* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#e30-dont-use-exception-specifications[{cpp} Core Guidelines E.30] - Dont use exception specifications
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#e30-dont-use-exception-specifications[E.30: Don't use exception specifications]



Expand Down
2 changes: 1 addition & 1 deletion rules/S2387/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ class Raspberry : public RedFruit { // RedFruit inherits from Fruit privately

== Resources

* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#es12-do-not-reuse-names-in-nested-scopes[{cpp} Core Guidelines - ES.12] - Do not reuse names in nested scopes
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#es12-do-not-reuse-names-in-nested-scopes[ES.12: Do not reuse names in nested scopes]

ifdef::env-github,rspecator-view[]

Expand Down
4 changes: 2 additions & 2 deletions rules/S2637/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -177,8 +177,8 @@ include::../standards.adoc[]

=== External coding guidelines

* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md[F.16: For "in" parameters, pass cheaply-copied types by value and others by reference to const]
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md[F.17: For "in-out" parameters, pass by reference to non-const]
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#f16-for-in-parameters-pass-cheaply-copied-types-by-value-and-others-by-reference-to-const[F.16: For "in" parameters, pass cheaply-copied types by value and others by reference to `const`]
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#f17-for-in-out-parameters-pass-by-reference-to-non-const[F.17: For "in-out" parameters, pass by reference to non-`const`]


=== Related rules
Expand Down
2 changes: 1 addition & 1 deletion rules/S2807/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ friend bool operator==(const MyClass &LHS, const MyClass &RHS);

== Resources

* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#c161-use-nonmember-functions-for-symmetric-operators[{cpp} Core Guidelines C.161] - Use nonmember functions for symmetric operators
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#c161-use-non-member-functions-for-symmetric-operators[C.161: Use non-member functions for symmetric operators]


ifdef::env-github,rspecator-view[]
Expand Down
2 changes: 1 addition & 1 deletion rules/S3229/cfamily/rule.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ int main() {
== Resources

* https://wiki.sei.cmu.edu/confluence/x/dXw-BQ[CERT, OOP53-CPP.] - Write constructor member initializers in the canonical order
* https://github.com/isocpp/CppCoreGuidelines/blob/036324/CppCoreGuidelines.md#c47-define-and-initialize-member-variables-in-the-order-of-member-declaration[{cpp} Core Guidelines C.47] - Define and initialize member variables in the order of member declaration
* {cpp} Core Guidelines - https://github.com/isocpp/CppCoreGuidelines/blob/e49158a/CppCoreGuidelines.md#c47-define-and-initialize-member-variables-in-the-order-of-member-declaration[C.47: Define and initialize member variables in the order of member declaration]


ifdef::env-github,rspecator-view[]
Expand Down
Loading

0 comments on commit 22b4470

Please sign in to comment.