Commit Graph

1481 Commits (39b9ebdf866b86ea2411e0cdc627ec1437a467f0)

Author SHA1 Message Date
Herb Sutter 9948bdc157
Update ES.23 to allow = initialiization (#1416)
* Update ES.23 to allow = initialiization

* Silencing Travis

* Changed title back to original, it's fine

* Add note about explicit
7 years ago
Dave Smith a9242c8dae Improve A.all (#1413)
* reword the A.1 rule title
* add candidate content for the A.1 rule
* make minor improvements to the A.2 note
* simplify wording in the first bullet of A.4's Reason
7 years ago
hsutter fc27313b75 Adopting fixes from PR 1411 7 years ago
hsutter 959b556aac Restored cached_computation description 7 years ago
Dave Smith 1a9a35d2d9 Tighten up CP.1 (#1405)
* Tighten up CP.1

* balanced verb usage in first sentence
* changed third sentence to "libraries not using threads", as I
  believe this was the original author's intended meaning.
* clarified "this" in fourth sentence
* cut wordiness of "thanks to the magic of cut-and-paste", as it
  added no value
* changed "Example" heading to "Example, bad"
* added "bad:" comment above statics in the example
* added an explanatory sentence immediately after the example
* changed "works perfectly in a single-threaded" after example to
  "works as intended in a single threaded".  Also balanced the
  structure of the two comma separated phrases inside this sentence.
* strengthened parenthetical explanation in second bullet of "could
  be made safe" section

* Correct grammar mistake pointed out by @cubbimew

* Remove specific cache details in CP.1 per @hsutter's request
7 years ago
hsutter 41b5bac211 Revert "Fixed typo in ES.22"
This reverts commit 976ee508a4.
7 years ago
hsutter 976ee508a4 Fixed typo in ES.22 7 years ago
Florian Thake 385199cc90 Added bad and good example to NR.5 in CppCoreGuidelines.md (#1401)
* Added bad and goof example to NR.5 in CppCoreGuidelines.md

Added bad and good example to NR.5 Don’t: Don’t do substantive work in a constructor; instead use two-phase initialization.
I think it could be suitable.

* adjusted coding style

* removed extra space

* removed one more whitespace

* removed spaces before note to make it a blank line

* made Cleanup method from bad example return void

* some changes after review comments

- removed try catch
- removed defaulted dtor
- changed int to size_t, removed check for even.
- Expects() for invariant check
- typo

* spell check adjustment

* moved comment up for met the line length

* changed variablename in good example

... they were named same after removed the try catch scope

* changed afer comments

- changed check_size() function to a static member function 
- fixed comment mentioning the default contract violation behavior.
7 years ago
Kyle 0f57785d2b C.129 Small fixes (#1406)
* C.129 Fix typos and conjugation

I noticed some grammatical errors in this section and fixed them to match my interpretation of the author's intention.

* One more fix

Pluralization
7 years ago
Aleksander 6a6321fcbf ES.49: added lvalue in std::forward description (#1404) 7 years ago
Aleksander 9f5a67fda7 ES.42: index in an example was not declared (#1403) 7 years ago
Paul Romano 1f6042f66c Fix typo in some of the NL rules, "thus rule" -> "this rule" (#1402) 7 years ago
hsutter 35cfe0c984 Closes #1397 7 years ago
hsutter 9275e7da09 Fixed typo in previous commit, closes #1395 7 years ago
hsutter 85e6aef5d6 Closes #1395 7 years ago
hsutter 274d65818d Closes #1392 7 years ago
hsutter 4b7cd81ad0 Closes #1392 7 years ago
Taewon Park 7ddf721500 Fix wrong <a> tags in Pro.bounds and Pro.lifetime (#1399)
Replaced "href" attribute to "name" of <a> tags in Pro.bounds and Pro.lifetime sections, to make the anchors to them work correctly
7 years ago
Sergey Zubkov 73f37745b1 fix typo 7 years ago
Saad 08659db9e1 MD typo fix (#1396) 7 years ago
hsutter c072184052 Closes #1370 7 years ago
hsutter 142fc6ad33 Closes #1367 7 years ago
Amir Livneh e3da8a1fd9 Add example for E.28 (#1385) 7 years ago
Dave Smith c2a5785d7e Remove elements that don't add value in ES.84 (#1390) 7 years ago
Dave Smith 8301421762 Tighten up the intro to CP (#1391) 7 years ago
Amir Livneh a8c7b7c5a8 Fix grammar in T.41 (#1389) 7 years ago
Amir Livneh bd3f3d5d25 Fix grammar in Con.2 (#1388) 7 years ago
Amir Livneh 422a190f57 Fix typo in T.22 (#1387) 7 years ago
Amir Livneh aa25be7d6b Make sentence in T.41 complete (#1386) 7 years ago
Amir Livneh ba2dbc5edf Fix calls to malloc() with 2 arguments (#1377)
* Fix calls to malloc() with 2 arguments
7 years ago
Amir Livneh f67e91d295 Use `memoizes` instead of `mnemonizes` in the context of caching (#1383)
* Use `memoizes` instead of `mnemonizes` in the context of caching

While apparently, 'mnemonizes' is a word, I don't think it's the best choice here.

* Update isocpp.dic
7 years ago
Amir Livneh c1beff1941 Fix grammar in T.11 (#1380) 7 years ago
Amir Livneh 43f4390185 Fix grammar in T.13 (#1379) 7 years ago
Amir Livneh 8ff099d2d2 Fix grammar (#1378) 7 years ago
Amir Livneh 7d092e37aa Remove extra parenthesis (#1375) 7 years ago
Amir Livneh 7511b40996 Use 'an' instead of 'a' where appropriate (#1374) 7 years ago
Amir Livneh 571ab494a8 Use consistent tense and remove repetition in E introduction (#1372) 7 years ago
Amir Livneh e93462e1d7 Fix capitalization in CP.200 (#1373) 7 years ago
Amir Livneh 6d94ce30dd Fix grammar in E.4 note (#1371) 7 years ago
Sergey Zubkov 1c0ddef508 fix travis CI, update date 7 years ago
hsutter 5d2c09aa48 Closes #1355 7 years ago
hsutter fcba85fb48 Closes #1332 7 years ago
hsutter 5276dc55c8 Closes #1330 7 years ago
Martín Knoblauch Revuelta 4d0a2a2aef Fix union example taken from TC++PL4 (#1357)
The code fails to set the type when a number value is assigned to a (formerly) string value. As a result, later access to the value or destruction of the object cause undefined behaviour (access to arbitrary memory address and/or heap corruption). The string field of the union is accessed, but its the number what is there…

It's also wrong in the book!

The fact that this bug has survived so long pretty much proves the point that code with unions is hard to get right ;-)

Oh, by the way, in order to test this, I had to add a constructor. Though, I'm not including it in the change. I suppose this just stuff we take for granted in the "// …" comment.
7 years ago
Amir Livneh f5689ada23 Remove unused parameter in ES.62 example (#1353) 7 years ago
hsutter 48cdedb31e Changed to sentence 7 years ago
Amir Livneh 7674f9c649 Fix capitalization in ES.56 note (#1349)
* Fix capitalization in ES.56 note

* Make proper sentence
7 years ago
Amir Livneh 9a703fa02b Don't reuse variable name in ES.50 example (#1348)
Reusing the name 'i' violates ES.12 and distracts from the point of the example.
7 years ago
Amir Livneh 8a1780e841 Fix punctuation in CP.1 (#1366) 7 years ago
Amir Livneh a2f5f77b1c Fix spacing in CP.4 example (#1365) 7 years ago
Amir Livneh 002d8b8301 Fix typos (#1364) 7 years ago
Amir Livneh b933b03329 Fix punctuation in ES.77 (#1363) 7 years ago
Amir Livneh 5750f1ee86 Fix typo in ES.86 example (#1362) 7 years ago
Amir Livneh 35db3bf123 Fix typo in ES.87 (#1361) 7 years ago
Martín Knoblauch Revuelta 4f97d37239 Fix args. of == and != operators in C.100 (#1359)
Obviously, the comparisons are intended to compare `Sorted_vector`s, not `T` values
7 years ago
Amir Livneh 5190ea51a3 Fix capitalization in ES.61 enforcement (#1350)
* Fix capitalization in ES.61 enforcement

* Fix grammar
7 years ago
Amir Livneh 2056a14da7 Fix grammar in ES.50 (#1352) 7 years ago
Amir Livneh a10668dc1d Fix spacing in ES.63 example (#1351) 7 years ago
Amir Livneh d6a6e7092a Remove superfluous word in ES.42 enforcement (#1347) 7 years ago
Amir Livneh 882e9539fa Fix grammar in ES.42 (#1346) 7 years ago
Amir Livneh c83acbc347 Fix comment grammar in ES.40 example (#1345) 7 years ago
Amir Livneh 9f0e9fe0a3 Fix grammar (#1344) 7 years ago
Amir Livneh edac03725a Remove unnecessary hyphenation (#1343) 7 years ago
Amir Livneh a95daa781e Fix comment stating incorrect assigned variable (#1342) 7 years ago
Amir Livneh 8c141fcfa5 Fix typo (#1341) 7 years ago
Amir Livneh feae4d6c15 Fix grammar (#1340) 7 years ago
Amir Livneh abad343557 Fix indentation in example (#1339) 7 years ago
Sergey Zubkov 358bef703e closes #1337 7 years ago
Matthew Dews 65aa7232e8 Fix typo (#1338) 7 years ago
Amir Livneh f2b517eac2 Fix grammar (#1336) 7 years ago
Amir Livneh ff8934c39b Fix grammar (#1335) 7 years ago
Amir Livneh e0830c7c3b Remove redundant word (#1334) 7 years ago
Amir Livneh 94eadbb7eb Fix grammar (#1333) 7 years ago
Amir Livneh 4797c26d4b Fix grammar (#1331) 7 years ago
Amir Livneh 1fd6ce78c2 Fix typo and grammar (#1329) 7 years ago
Amir Livneh c9f1066756 Fix grammar (#1327) 7 years ago
hsutter 684635eecd Closes #1322
Add an Enforcement rule for prefix inc/dec functions. Try to phrase it
to reduce noisiness.
7 years ago
Franz Hollerer f7ef39f0d6 issue #1236 - there is no reason to use the Hungarian notation in C (#1326) 7 years ago
hsutter fb1d4c9189 Closes #1319 7 years ago
mpherg cbbe6071ce Standardize example and note headers (minor) (#1318)
* Standardize example headings

Some example headings used "Example, [good,bad]" and others used
"Example; [good,bad]" (note the comma verses semicolon). The vast
majority of the headings used the comma version, so this commit
normalizes all example headings to use a comma instead of a semicolon.

* Standardize note heading level

Two of the "Note" headings were set to level four, but the rest are at
level 5. Fix the level fours to make them level fives.
7 years ago
hsutter b38d065e45 Cleaned up a code example comment 7 years ago
hsutter 373765b827 Closes #1317
Fixed section heading to match item
7 years ago
hsutter 4ed280b080 Closes #1315 7 years ago
Dave Smith 1805589141 Pro.bounds: Correct impact wording (minor) (#1316) 7 years ago
hsutter fd9c725549 Update for #1306 7 years ago
hsutter 88a9ba0640 Closes #1311 7 years ago
beinhaerter 4e8ab7ae86 F.21 wording changed to current status of the standard (#1313) 7 years ago
Mark Abraham e58bce6f6a Fix typo in ES.102 (#1312)
The value -2 is signed, so the word "unsigned" is clearly wrong.  The
text notes that negative subscripts are a source of surprises and
bugs, so the correction to "negative" seems to reflect Bjarne's
original intent.
7 years ago
Honggyu Kim 526f14f56a Prefer bullet points to a long sentence in SL section (#1310)
It'd be better to have bullet points than writing the points in a long
sentence even with description in parenthesis.
7 years ago
Max Bozzi dd8fc629d7 Remove claims that "constexpr functions are pure" (#1307)
F.4 and F.8 made this erroneous claim as parts of notes which are
entirely removed.
7 years ago
hsutter 714bec5010 Updated date 7 years ago
Marzo Sette Torres Junior f971ad2f17 Fixing tagged union example (#1301)
It did not compile previously due to missing type specifier on placement new.
7 years ago
Jonathan Wakely d822f80d5d Fix whitespace errors in code, to make Travis CI pass 7 years ago
Andriy Berestovskyy a7fc6f6d4e Fix a typo (#1300) 7 years ago
hsutter 0fe73c966d Fixed typo
Thanks @dalg24!
7 years ago
hsutter d6d7d749c3 Minor rewording 7 years ago
hsutter 334c902a13 Adding suggestion in #1283 comment thread
Thanks, Mike!
7 years ago
Sergey Zubkov 41b10255c4 date update 7 years ago
Herb Sutter 6e3d2d2c22 Closes #1297 7 years ago
Herb Sutter 4fa9d4019f Minor edits to #1291 7 years ago