https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68164

            Bug ID: 68164
           Summary: Destructor side effect unexpectedly elided
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: webrown.cpp at gmail dot com
  Target Milestone: ---

Created attachment 36625
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=36625&action=edit
Test program

Compiler version:  g++-mp-6 (MacPorts gcc6 6-20151025_0) 6.0.0 20151025
(experimental).

Compiling via:  g++-mp-6 -Og -std=c++1z

The enclosed test program improperly asserts because (it seems) that the
assignment in the body of B's destructor is elided.

The program does not assert, however, if I insert a debugging output statement
(marked #1) following the assignment.

Comment #1 out to see the unexpected failed assertion.  Repositioning #1 to
precede the assignment also results in a failed assertion.

Reply via email to