This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/68164] New: Destructor side effect unexpectedly elided


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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]