From Jason Turner

[diff.cpp14.temp]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpr0xzih_z/{from.md → to.md} +19 -0
tmp/tmpr0xzih_z/{from.md → to.md} RENAMED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ### Clause [[temp]]: templates <a id="diff.cpp14.temp">[[diff.cpp14.temp]]</a>
2
+
3
+ [[temp.deduct.type]] **Change:** Allowance to deduce from the type of a
4
+ non-type template argument. **Rationale:** In combination with the
5
+ ability to declare non-type template arguments with placeholder types,
6
+ allows partial specializations to decompose from the type deduced for
7
+ the non-type template argument. **Effect on original feature:** Valid
8
+ C++14code may fail to compile or produce different results in this
9
+ International Standard:
10
+
11
+ ``` cpp
12
+ template <int N> struct A;
13
+ template <typename T, T N> int foo(A<N> *) = delete;
14
+ void foo(void *);
15
+ void bar(A<0> *p) {
16
+ foo(p); // ill-formed; previously well-formed
17
+ }
18
+ ```
19
+