Stated the main two reasons why functions with lots of parameters exist:
Because they're missing an abstraction, or because the function is
trying to do more than one job.
Added explicit coverage of those reasons and another example
illustrating that.
Rconc-create0.cpp:20: Line ends in whitespace. Consider deleting these extra spaces. [whitespace/end_of_line] [4]
Res-always5.cpp:15: Missing space after , [whitespace/comma] [3]
Rp-lib0.cpp:15: Missing space after , [whitespace/comma] [3]
Rs-using-directive0.cpp:25: Extra space after ( in function call [whitespace/parens] [4]
Rs-using-directive0.cpp:25: Extra space before ) [whitespace/parens] [2]
11979:3 warning Incorrect indentation before bullet: remove 1 space list-item-bullet-indent
19412:1-19462:23 warning Missing blank line before block node no-missing-blank-lines
Line 1037: analyser -> analyses
Line 2399: yu -> yew
Line 3745: funtions -> functions
Line 3748: multimethods -> multi methods
Line 6652: mixins -> mixing
Line 11991: unittests -> unittest
- Fixed an inconsistent title (section ToC and actual guideline title
differed)
- Can't reseat a reference, so changed it to pointer
- Removed what I think is a stray/outdated rule against passing
move-only types (unique_ptr) by &&
- Reordered a three-line example for logical flow
Added C++17-specific text in ES.6 for `if` and `switch` initializers.
Note that the Guidelines assume C++14, so the "Enforcement" clauses for
C++17-specific rules will be separate until we assume people have broad
access to C++17 features in their compilers. Once that happens we can
roll the C++17-specific parts into the main text.