From Jason Turner

[diff.cpp20.temp]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp7u6hyaqi/{from.md → to.md} +16 -0
tmp/tmp7u6hyaqi/{from.md → to.md} RENAMED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ### [[temp]]: templates <a id="diff.cpp20.temp">[[diff.cpp20.temp]]</a>
2
+
3
+ **Change:** Deducing template arguments from exception specifications.
4
+ **Rationale:** Facilitate generic handling of throwing and non-throwing
5
+ functions. **Effect on original feature:** Valid ISO C++20 code may be
6
+ ill-formed in this revision of C++. For example:
7
+
8
+ ``` cpp
9
+ template<bool> struct A { };
10
+ template<bool B> void f(void (*)(A<B>) noexcept(B));
11
+ void g(A<false>) noexcept;
12
+ void h() {
13
+ f(g); // ill-formed; previously well-formed
14
+ }
15
+ ```
16
+