@@ -3864,7 +3864,7 @@ Copy and move rules:
3864
3864
3865
3865
Other default operations rules:
3866
3866
3867
- * [C.80: Use `=default` if you have to be explicit about using the default semantics](#Rc-default )
3867
+ * [C.80: Use `=default` if you have to be explicit about using the default semantics](#Rc-eqdefault )
3868
3868
* [C.81: Use `=delete` when you want to disable default behavior (without wanting an alternative)](#Rc-delete)
3869
3869
* [C.82: Don't call virtual functions in constructors and destructors](#Rc-ctor-virtual)
3870
3870
* [C.83: For value-like types, consider providing a `noexcept` swap function](#Rc-swap)
@@ -5445,7 +5445,7 @@ In addition to the operations for which the language offer default implementatio
5445
5445
there are a few operations that are so foundational that it rules for their definition are needed:
5446
5446
comparisons, `swap`, and `hash`.
5447
5447
5448
- ### <a name="Rc-default "></a>C.80: Use `=default` if you have to be explicit about using the default semantics
5448
+ ### <a name="Rc-eqdefault "></a>C.80: Use `=default` if you have to be explicit about using the default semantics
5449
5449
5450
5450
##### Reason
5451
5451
@@ -11079,9 +11079,9 @@ Concurrency rule summary:
11079
11079
* [CP.25: Prefer `gsl::raii_thread` over `std::thread` unless you plan to `detach()`](#Rconc-raii_thread)
11080
11080
* [CP.26: Prefer `gsl::detached_thread` over `std::thread` if you plan to `detach()`](#Rconc-detached_thread)
11081
11081
* [CP.27: Use plain `std::thread` for `thread`s that detach based on a run-time condition (only)](#Rconc-thread)
11082
- * [CP.28: Remember to join scoped `thread`s that are not `detach()`ed](#Rconc-join)
11082
+ * [CP.28: Remember to join scoped `thread`s that are not `detach()`ed](#Rconc-join-undetached )
11083
11083
* [CP.30: Do not pass pointers to local variables to non-`raii_thread's](#Rconc-pass)
11084
- * [CP.31: Pass small amounts of data between threads by value, rather than by reference or pointer](#Rconc-data)
11084
+ * [CP.31: Pass small amounts of data between threads by value, rather than by reference or pointer](#Rconc-data-by-value )
11085
11085
* [CP.32: To share ownership between unrelated `thread`s use `shared_ptr`](#Rconc-shared)
11086
11086
* [CP.40: Minimize context switching](#Rconc-switch)
11087
11087
* [CP.41: Minimize thread creation and destruction](#Rconc-create)
@@ -11374,7 +11374,7 @@ The plain `thread`s should be assumed to use the full generality of `std::thread
11374
11374
11375
11375
11376
11376
11377
- ### <a name="Rconc-join"></a>CP.28: Remember to join scoped `thread`s that are not `detach()`ed
11377
+ ### <a name="Rconc-join-undetached "></a>CP.28: Remember to join scoped `thread`s that are not `detach()`ed
11378
11378
11379
11379
##### Reason
11380
11380
@@ -11447,7 +11447,7 @@ Use a `raii_thread` or don't pass the pointer.
11447
11447
Flag pointers to locals passed in the constructor of a plain `thread`.
11448
11448
11449
11449
11450
- ### <a name="Rconc-switch "></a>CP.31: Pass small amounts of data between threads by value, rather than by reference or pointer
11450
+ ### <a name="Rconc-data-by-value "></a>CP.31: Pass small amounts of data between threads by value, rather than by reference or pointer
11451
11451
11452
11452
##### Reason
11453
11453
0 commit comments