From Jason Turner

[diff.cpp03.expr]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpz6hrks3g/{from.md → to.md} +13 -1
tmp/tmpz6hrks3g/{from.md → to.md} RENAMED
@@ -1,8 +1,20 @@
1
  ### Clause [[expr]]: expressions <a id="diff.cpp03.expr">[[diff.cpp03.expr]]</a>
2
 
3
  [[expr.mul]] **Change:** Specify rounding for results of integer `/` and
4
- `%` **Rationale:** Increase portability, C99 compatibility. **Effect on
5
  original feature:** Valid C++03code that uses integer division rounds
6
  the result toward 0 or toward negative infinity, whereas this
7
  International Standard always rounds the result toward 0.
8
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ### Clause [[expr]]: expressions <a id="diff.cpp03.expr">[[diff.cpp03.expr]]</a>
2
 
3
  [[expr.mul]] **Change:** Specify rounding for results of integer `/` and
4
+ `%`. **Rationale:** Increase portability, C99 compatibility. **Effect on
5
  original feature:** Valid C++03code that uses integer division rounds
6
  the result toward 0 or toward negative infinity, whereas this
7
  International Standard always rounds the result toward 0.
8
 
9
+ [[expr.log.and]] **Change:** `&&` is valid in a *type-name*.
10
+ **Rationale:** Required for new features. **Effect on original
11
+ feature:** Valid C++03code may fail to compile or produce different
12
+ results in this International Standard, as the following example
13
+ illustrates:
14
+
15
+ ``` cpp
16
+ bool b1 = new int && false; // previously false, now ill-formed
17
+ struct S { operator int(); };
18
+ bool b2 = &S::operator int && false; // previously false, now ill-formed
19
+ ```
20
+