From Jason Turner

[diff.cpp14.decl]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpe_mnwbwx/{from.md → to.md} +0 -35
tmp/tmpe_mnwbwx/{from.md → to.md} RENAMED
@@ -1,35 +0,0 @@
1
- ### Clause [[dcl.decl]]: declarators <a id="diff.cpp14.decl">[[diff.cpp14.decl]]</a>
2
-
3
- [[dcl.fct]] **Change:** Make exception specifications be part of the
4
- type system. **Rationale:** Improve type-safety. **Effect on original
5
- feature:** Valid C++14code may fail to compile or change meaning in this
6
- International Standard:
7
-
8
- ``` cpp
9
- void g1() noexcept;
10
- void g2();
11
- template<class T> int f(T *, T *);
12
- int x = f(g1, g2); // ill-formed; previously well-formed
13
- ```
14
-
15
- [[dcl.init.aggr]] **Change:** Definition of an aggregate is extended to
16
- apply to user-defined types with base classes. **Rationale:** To
17
- increase convenience of aggregate initialization. **Effect on original
18
- feature:** Valid C++14code may fail to compile or produce different
19
- results in this International Standard; initialization from an empty
20
- initializer list will perform aggregate initialization instead of
21
- invoking a default constructor for the affected types:
22
-
23
- ``` cpp
24
- struct derived;
25
- struct base {
26
- friend struct derived;
27
- private:
28
- base();
29
- };
30
- struct derived : base {};
31
-
32
- derived d1{}; // Error. The code was well-formed before.
33
- derived d2; // still OK
34
- ```
35
-