Fernando J. Iglesias García
16f29fd38c
Use enum class in Enum.4 example. ( #2065 )
2023-04-13 23:26:43 -04:00
Sergey Zubkov
1d04d93dbe
bump date and make CI happy
2023-04-13 23:20:52 -04:00
Herb Sutter
1b41448298
List some non-enum alternatives to macros in Enum.1, closes #2054
2023-04-13 14:51:03 -07:00
Herb Sutter
89a20b2cc8
Expand comment about why P.3 'bad' code is unclear, closes #2058
2023-04-13 14:42:41 -07:00
Herb Sutter
3c90d590e1
Allow [&]
capture default when also capturing this
, closes #2060
2023-04-13 14:33:21 -07:00
bgloyer
0d70ae927d
SL_3 'Do not add non-standard entities to namespace std
' add example ( #2031 )
...
* SL_3 add example
* Update isocpp.dic
add My_Vector
2023-03-30 14:18:53 -07:00
Henrique Mageste
6a0b5e6eca
Abstract class needs at least one abstract method to be considered abstract ( #2053 )
...
The introduction of the method is needed, for instance, for constructions like std::is_abstract<AbstractBase>::value to be evaluated to true
2023-03-30 14:17:31 -07:00
Herb Sutter
696633572c
Remove spurious Enforcement, closes #2061
2023-03-30 14:14:19 -07:00
Florian Bramer
a3ae12b20e
Fixed typo ( #2055 )
...
Section C.21 shows a code example which typed
a class name in two different ways:
- CloneableBase
- ClonableBase
It is easy to overlook but it would not compile.
My commit prefers CloneableBase over ClonableBase and uses just that
name then. I prefered CloneableBase because Java's SDK uses the same
writing, so I guess this can be consired to be more widely used.
2023-03-15 23:03:52 -04:00
Tim Lyon
8e3723f18f
Fix typo ( #2051 )
2023-02-24 12:41:01 -05:00
Xeverous
e80373f226
fix typo in code example in C.43 ( #2040 )
2023-02-17 11:31:31 -05:00
ancestor-mithril
e1a453b0b0
Fix broken anchors ( #2038 )
...
* Standard library and GSL anchors do not work anymore.
2023-02-17 11:31:07 -05:00
Chris Cotter
938452179c
Fix minor typo in ES.59 ( #2037 )
2023-02-12 13:46:45 -05:00
Hyuk Myeong
efd59afe9c
Fix typos when using names ( #2035 )
...
* Fix typos when using names
* Update isocpp.dic
2023-02-10 15:13:18 -05:00
Sergey
31bb3d1b01
F.10: small code fix
2023-01-26 17:05:31 -05:00
Jonathan Wakely
6d912e8b51
CP.44 improve example and add more accurate discussion ( #2028 )
2023-01-26 11:29:02 -05:00
Herb Sutter
da8a6fbd37
Make C.12 title consistent
2023-01-19 14:43:11 -08:00
Herb Sutter
06fabdc9af
Update C.12 to apply to copyable/movable types, closes #2012
2023-01-19 14:42:25 -08:00
Herb Sutter
0bc56ffaa8
s/instead follow/follow/ for #2010
2023-01-19 14:17:29 -08:00
Russell McClellan
1ba3371a0d
Add exceptions to F.15, F.16, and F.18 for shared_ptr
types ( #2010 )
...
Currently these guidelines conflict with R.34, R.35, and R.36.
This conflict has led to confusion, where it's unclear which
guidelines to prefer for `shared_ptr` types.
In a [previous
PR](https://github.com/isocpp/CppCoreGuidelines/pull/1989 ) I proposed
preferring the "F" series of guidelines. This PR takes the opposite
approach and prefers the "R" guidelines for `shared_ptr` types.
I don't feel strongly about which guidelines to prefer, I just want to make
sure the guidelines are internally consistent.
2023-01-19 14:16:39 -08:00
Hyuk Myeong
fa31c19979
Fix minor typos ( #2022 )
...
* Fix minor typos
Fix minor typos
* Update isocpp.dic
2023-01-19 14:04:14 -08:00
Sergey Zubkov
4b706d9d6d
satisfy travis ci
2023-01-15 10:53:11 -05:00
Herb Sutter
17b68f14f6
Describe capture-lists and update F.19 forwarding enforcement, updates #2016 and closes #2017
2023-01-12 16:24:01 -08:00
Chris Cotter
1748ebb45a
Editorial - use "capture default" for syntactic element ( #2016 )
2023-01-12 14:13:35 -08:00
Kimi MA
12ad22b024
non-built-in -> built-in ( #2015 )
2023-01-05 17:10:06 -05:00
Kimi MA
9028b62106
R.33 add missing space in the title ( #2014 )
2022-12-23 08:57:35 -05:00
Arkady Shapkin
ee8d9ab216
Clarify F.16 enforcement rule about passing by value ( #2008 )
2022-12-15 14:05:14 -08:00
Sergey Zubkov
fb112c7281
make CI happy
2022-12-09 15:13:22 -05:00
Herb Sutter
380a6ff26d
Added span
bounds-checking guarantee and a note about its relationship to std::span
2022-12-09 10:38:05 -08:00
Herb Sutter
b435cf54a5
Apply edits to close #1984 #2004 #2006
...
Also removing some stray trailing whitespace on a few unrelated lines
2022-12-08 14:03:45 -08:00
bgloyer
ee368e238e
R.20: 'represent ownership' clean up example and enforcement ( #1992 )
...
* Clean up R.20 example; enforcement
* Clarified enforcement
2022-12-01 14:27:29 -08:00
Andrey Sikorin
b8f13c59a3
Extend "when necessary" explanation ( #2000 )
...
* Extend "when necessary" explanation
* Rephrase sentence
2022-12-01 14:25:21 -08:00
Max FERGER
ae06b0a056
Per: fix some typos ( #1995 )
...
* Per.7: fix typo in example
* Per: improve grammar
* Apply suggestions from code review
2022-12-01 09:15:00 -05:00
Wu Yongwei
efc6f6eabe
ES.2: Fix wrong code logic in the example ( #1999 )
2022-11-26 23:30:16 -05:00
Pluto Yang
cf3eacad1a
SL.io.50: missing backticks ( #1994 )
2022-11-17 10:51:17 -05:00
CFrei
016742b1c0
Fix typo in SL.C.1 link title ( #1991 )
2022-11-11 12:33:27 -05:00
Niels Dekker
bf29c35082
ES.24 (Use a unique_ptr) Example should delete
the raw pointer ( #1986 )
...
Without having a `delete p2` statement at the end, the claim that "the object pointed to by `p2` is leaked" would just seem trivial.
2022-10-19 14:29:43 -04:00
Aditya Ardiya
5c1a2b69fb
Fix typo reference to pro-type-union ( #1985 )
...
clang-tidy has [cppcoreguidelines-pro-type-union-access](https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/pro-type-union-access.html ) that refers to the pro-type-union. Unfortunately there's an typo. This commit tries to fix the type
2022-10-18 09:22:50 -04:00
Niels Dekker
f4a9420e32
R.5 (scoped objects): Do not warn on a const unique_ptr<T[]>
( #1969 )
...
`unique_ptr<T[]>` is being used in practice to declare a local dynamically allocated buffer.
2022-10-13 14:08:53 -07:00
Niels Dekker
40ce5d12c3
R.5 (scoped objects): Remove auto
from Enforcement section ( #1979 )
...
The enforcement rule on "an object is allocated and then deallocated on all paths" is not _specifically_ about objects declared by the `auto` keyword, and `auto` does not just mean "automatic storage duration" anymore.
2022-10-13 14:03:43 -07:00
saimen
8181873753
F.21: fix variable name in example and text ( #1981 )
2022-10-07 17:27:57 -04:00
Sergey Zubkov
65aae3ede6
C.65: clarify pointer move example with comments (issue #1892 )
2022-10-07 09:24:06 -04:00
Sergey Zubkov
0b22b82159
Revert "C.65: more explicit about the badness of bad example"
...
This reverts commit 7ad62600f1
.
2022-10-07 00:53:03 -04:00
Sergey Zubkov
bafb571ade
F.53 add notes about capture of this and non-local pointers
...
closes #1816
2022-10-06 19:17:44 -04:00
Sergey Zubkov
a217a9ff71
F.20 extract unrelated parts into new rule, F.49
...
closes #1862
2022-10-06 19:05:38 -04:00
Sergey Zubkov
7ad62600f1
C.65: more explicit about the badness of bad example
...
closes #1892
2022-10-06 18:57:40 -04:00
Herb Sutter
b22df66453
Closes #1907
2022-09-29 14:28:23 -07:00
Sergey Zubkov
c16373c838
bump date
2022-09-23 00:26:02 -04:00
Sergey Zubkov
5d2c6c9dd2
moved T.140/T.141 to F.10/F.11 leaving redirects behind ( closes #1974 )
2022-09-23 00:25:03 -04:00
Sergey Zubkov
083bca09d6
move SF.1 to NL.27, leaving a redirect behind ( closes #1965 )
2022-09-23 00:18:05 -04:00