Commit 225cc43
[lib] Replace "shall not X" with "does not X" when it describes library behavior.
In these places we aren't saying "it's UB if X happens"; we're literally
specifying the behavior of a library function as "X does not happen,
we promise."
Jonathan Wakely points out that there is still room for the user to cause UB
by specializing `pair`, `duration`, `function`, etc. such that their specializations
do X. In that case, the UB happens due to [namespace.std] p2, which requires
that "the [program-defined] specialization meets the standard library requirements
for the original template."1 parent 02e4183 commit 225cc43
2 files changed
+11
-11
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1254 | 1254 | | |
1255 | 1255 | | |
1256 | 1256 | | |
1257 | | - | |
| 1257 | + | |
1258 | 1258 | | |
1259 | 1259 | | |
1260 | 1260 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
512 | 512 | | |
513 | 513 | | |
514 | 514 | | |
515 | | - | |
| 515 | + | |
516 | 516 | | |
517 | 517 | | |
518 | 518 | | |
519 | 519 | | |
520 | | - | |
521 | | - | |
| 520 | + | |
| 521 | + | |
522 | 522 | | |
523 | 523 | | |
524 | 524 | | |
| |||
1156 | 1156 | | |
1157 | 1157 | | |
1158 | 1158 | | |
1159 | | - | |
| 1159 | + | |
1160 | 1160 | | |
1161 | 1161 | | |
1162 | | - | |
| 1162 | + | |
1163 | 1163 | | |
1164 | 1164 | | |
1165 | 1165 | | |
| |||
15511 | 15511 | | |
15512 | 15512 | | |
15513 | 15513 | | |
15514 | | - | |
| 15514 | + | |
15515 | 15515 | | |
15516 | 15516 | | |
15517 | 15517 | | |
| |||
15582 | 15582 | | |
15583 | 15583 | | |
15584 | 15584 | | |
15585 | | - | |
15586 | | - | |
15587 | | - | |
15588 | | - | |
| 15585 | + | |
| 15586 | + | |
| 15587 | + | |
| 15588 | + | |
15589 | 15589 | | |
15590 | 15590 | | |
15591 | 15591 | | |
| |||
0 commit comments