This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 119a. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.
2025-12-20
[Voted into the WP at the April, 2007 meeting as part of paperJ16/07-0099 = WG21 N2239.]
6.8.7 [class.temporary] paragraph 3simplystates the requirement that temporaries created during the evaluationof an expression
are destroyed as the last step in evaluating thefull-expression (1.9) that (lexically) contains the point where theywere created.There is nothing said about the relative order in which thesetemporaries are destroyed.
Paragraph 5, dealing with temporaries bound to references, says
the temporaries created during the evaluation of the expressioninitializing the reference, except the temporary to which thereference is bound, are destroyed at the end of the full-expression inwhich they are created and in the reverse order of the completion oftheir construction.Is this difference intentional? May temporaries in expressions otherthan those initializing references be deleted in non-LIFO order?
Notes from 04/00 meeting:
Steve Adamczyk expressed concern about constraining implementationsthat are capable of fine-grained parallelism -- they may beunable to determine the order of construction without addingundesirable overhead.
Proposed resolution (April, 2007):
As specified in paper J16/07-0099 = WG21 N2239.