view gcc/testsuite/g++.old-deja/g++.law/dtors5.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
line wrap: on
line source

// { dg-do run  }
// GROUPS passed destructors
// dtor file:
// Message-Id: <1992Jun25.181845.18886@leland.Stanford.EDU>
// From: niz@leland.stanford.edu (Jim Nisbet)
// Subject: gcc 2.2.2 -- c++ bug: destructor called twice (example)
// Date: 25 Jun 92 18:18:45 GMT

#include <stdio.h>

int things = 0;

class foo {
public:
   foo() { things++; }
   foo(const foo&) { things++; }
   ~foo() { things--; }

   int i;
};

void
sub(foo f) {
   ;
}


int main() {
   sub(foo());
   if (things == 0)
     printf ("PASS\n");
   else
     { printf ("FAIL\n"); return 1; }
}