Skip to content
Merged
Changes from 1 commit
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
68767ea
CWG2609 Padding in class types
burblebee Apr 4, 2026
5d6e9c8
CWG2744 Multiple objects of the same type at the same address
burblebee Apr 4, 2026
adcdd79
CWG2765 Address comparisons between potentially non-unique objects du…
burblebee Apr 4, 2026
5d65e7f
CWG2799 Inheriting default constructors
burblebee Apr 4, 2026
c2f1ab8
CWG2947 Limiting macro expansion in pp-module
burblebee Apr 4, 2026
7e8fea5
CWG2966 Alignment and value representation of std::nullptr_t
burblebee Apr 4, 2026
c3fbb89
CWG2976 Transferring control out of a function
burblebee Apr 4, 2026
2821d9c
CWG2983 Non-type template parameters are not variables
burblebee Apr 4, 2026
660f75c
CWG2992 Labels do not have names
burblebee Apr 5, 2026
c706a4e
CWG3010 constexpr placement-new should require transparent replaceabi…
burblebee Apr 5, 2026
ff3d471
CWG3029 Confusing note about ordinary character types for aligned mem…
burblebee Apr 5, 2026
e35e7c2
CWG3035 Lambda expressions in anonymous unions
burblebee Apr 5, 2026
13209c7
CWG3058 "Program point" is not defined
burblebee Apr 5, 2026
6181aa6
CWG3125 Token convertibility requirement in #if
burblebee Apr 5, 2026
3dfbe43
CWG3126 A module import needs a header-name as a token
burblebee Apr 5, 2026
4a2eed2
CWG3128 Potentially-throwing unevaluated operands
burblebee Apr 5, 2026
7f818ad
CWG3129 Clarify which floating-point-literals are valid
burblebee Apr 5, 2026
931cad9
CWG3130 Naming function members of anonymous unions
burblebee Apr 5, 2026
29022b7
CWG3132 Unclear disambiguation rule for condition
burblebee Apr 5, 2026
d339a26
CWG3133 Cv-qualified types in built-in operator candidates
burblebee Apr 5, 2026
870aab7
CWG3136 Constant expressions of type void
burblebee Apr 5, 2026
20e988a
CWG3142 Possible expansions of __LINE__ changing over time
burblebee Apr 6, 2026
c25b52e
[cpp.predefined] Insert "The integer literal" as introducer.
tkoeppe Apr 11, 2026
30b9804
CWG3148 Definition of "user-declared" special member function
burblebee Apr 6, 2026
383e447
CWG3151 Closure types that are final
burblebee Apr 6, 2026
e3b6062
CWG3153 Immediate-escalating defaulted comparison
burblebee Apr 6, 2026
a0b9b3b
CWG3155 Escalation of virtual functions
burblebee Apr 6, 2026
8c7d950
CWG3156 Handling of deleted functions in unevaluated lambda-captures
burblebee Apr 6, 2026
9959c52
CWG3157 Missing handling of operator new[] for deallocation function …
burblebee Apr 6, 2026
9b822e3
CWG3171 Codify the strong ownership for modules
burblebee Apr 6, 2026
30d255b
CWG3173 Remove misleading footnote about as-if rule
burblebee Apr 6, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
CWG3157 Missing handling of operator new[] for deallocation function …
…template matching
  • Loading branch information
burblebee authored and tkoeppe committed Apr 11, 2026
commit 9959c52d12865f31e5b7cbf9afdc3c19982cfb80
8 changes: 4 additions & 4 deletions source/templates.tex
Original file line number Diff line number Diff line change
Expand Up @@ -4404,10 +4404,10 @@
\item
when the address of a function template specialization is taken;
\item
when a placement operator delete that is a
when a placement deallocation function that is a
function template
specialization
is selected to match a placement operator new\iref{basic.stc.dynamic.deallocation,expr.new};
is selected to match a placement allocation function\iref{basic.stc.dynamic.deallocation,expr.new};
\item
when a friend function declaration\iref{temp.friend}, an
explicit instantiation\iref{temp.explicit} or an explicit specialization\iref{temp.expl.spec} refers to
Expand Down Expand Up @@ -9639,12 +9639,12 @@
for explicit instantiations\iref{temp.explicit}, explicit specializations\iref{temp.expl.spec},
and certain friend declarations\iref{temp.friend}. This is also done to
determine whether a deallocation function template specialization matches a placement
\tcode{operator new}\iref{basic.stc.dynamic.deallocation,expr.new}.
allocation function\iref{basic.stc.dynamic.deallocation,expr.new}.
In all these cases, \tcode{P} is the type of the function template being considered
as a potential match and \tcode{A} is either the function type from the
declaration
or the type of the deallocation function that would match the placement
\tcode{operator new} as described in~\ref{expr.new}. The
allocation function as described in~\ref{expr.new}. The
deduction is done as described in~\ref{temp.deduct.type}.

\pnum
Expand Down