From Jason Turner

[temp.dep.res]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpdqu8elhd/{from.md → to.md} +10 -11
tmp/tmpdqu8elhd/{from.md → to.md} RENAMED
@@ -26,20 +26,19 @@ If a function template or member function of a class template is called
26
  in a way which uses the definition of a default argument of that
27
  function template or member function, the point of instantiation of the
28
  default argument is the point of instantiation of the function template
29
  or member function specialization.
30
 
31
- For an *exception-specification* of a function template specialization
32
- or specialization of a member function of a class template, if the
33
- *exception-specification* is implicitly instantiated because it is
34
- needed by another template specialization and the context that requires
35
- it depends on a template parameter, the point of instantiation of the
36
- *exception-specification* is the point of instantiation of the
37
- specialization that requires it. Otherwise, the point of instantiation
38
- for such an *exception-specification* immediately follows the namespace
39
- scope declaration or definition that requires the
40
- *exception-specification*.
41
 
42
  For a class template specialization, a class member template
43
  specialization, or a specialization for a class member of a class
44
  template, if the specialization is implicitly instantiated because it is
45
  referenced from within another template specialization, if the context
@@ -72,11 +71,11 @@ specialization that has a point of instantiation within the translation
72
  unit, the end of the translation unit is also considered a point of
73
  instantiation. A specialization for a class template has at most one
74
  point of instantiation within a translation unit. A specialization for
75
  any template may have points of instantiation in multiple translation
76
  units. If two different points of instantiation give a template
77
- specialization different meanings according to the one definition rule (
78
  [[basic.def.odr]]), the program is ill-formed, no diagnostic required.
79
 
80
  #### Candidate functions <a id="temp.dep.candidate">[[temp.dep.candidate]]</a>
81
 
82
  For a function call where the *postfix-expression* is a dependent name,
 
26
  in a way which uses the definition of a default argument of that
27
  function template or member function, the point of instantiation of the
28
  default argument is the point of instantiation of the function template
29
  or member function specialization.
30
 
31
+ For a *noexcept-specifier* of a function template specialization or
32
+ specialization of a member function of a class template, if the
33
+ *noexcept-specifier* is implicitly instantiated because it is needed by
34
+ another template specialization and the context that requires it depends
35
+ on a template parameter, the point of instantiation of the
36
+ *noexcept-specifier* is the point of instantiation of the specialization
37
+ that requires it. Otherwise, the point of instantiation for such a
38
+ *noexcept-specifier* immediately follows the namespace scope declaration
39
+ or definition that requires the *noexcept-specifier*.
 
40
 
41
  For a class template specialization, a class member template
42
  specialization, or a specialization for a class member of a class
43
  template, if the specialization is implicitly instantiated because it is
44
  referenced from within another template specialization, if the context
 
71
  unit, the end of the translation unit is also considered a point of
72
  instantiation. A specialization for a class template has at most one
73
  point of instantiation within a translation unit. A specialization for
74
  any template may have points of instantiation in multiple translation
75
  units. If two different points of instantiation give a template
76
+ specialization different meanings according to the one-definition rule (
77
  [[basic.def.odr]]), the program is ill-formed, no diagnostic required.
78
 
79
  #### Candidate functions <a id="temp.dep.candidate">[[temp.dep.candidate]]</a>
80
 
81
  For a function call where the *postfix-expression* is a dependent name,