From 8286ac511144e4f17d34eac9affb97e50646344a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Frings-F=C3=BCrst?= Date: Wed, 23 Jul 2014 15:25:44 +0200 Subject: Imported Upstream version 4.0.0 --- libcult/examples/mm/shptr/shptr.cxx | 73 ------------------------------------- 1 file changed, 73 deletions(-) delete mode 100644 libcult/examples/mm/shptr/shptr.cxx (limited to 'libcult/examples/mm/shptr/shptr.cxx') diff --git a/libcult/examples/mm/shptr/shptr.cxx b/libcult/examples/mm/shptr/shptr.cxx deleted file mode 100644 index cb026d4..0000000 --- a/libcult/examples/mm/shptr/shptr.cxx +++ /dev/null @@ -1,73 +0,0 @@ -// file : examples/mm/shptr/shptr.cxx -// author : Boris Kolpackov -// copyright : Copyright (c) 2005-2010 Boris Kolpackov -// license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -#include -#include // MM::locate -#include // MM::inc_ref - -#include - -using std::cerr; -using std::endl; - -using namespace Cult; -using namespace MM; - -struct Foo -{ - virtual ~Foo () {} - char c; -}; - -struct Bar: virtual Foo {char c;}; - -struct Baz: virtual Foo {char c;}; - -struct Fox: Bar, Baz {}; - - -struct A -{ - char c[8]; -}; - -struct B -{ - char c[8]; -}; - -struct C : A, B -{ - char c[8]; -}; - -int -main () -{ - { - Baz* bp (new Fox); - Foo* fp (bp); - - Counter* cp (locate (fp, *counted)); - - inc_ref (bp); - - cp->dec_ref (); - - if (cp->dec_ref ()) cerr << "good: destroying" << endl; - else cerr << "bad: leaking" << endl; - - delete bp; - } - - { - Shptr pfox (new Fox); - Shptr pbar (pfox); - - Shptr pfoo; - - pfoo = pbar; - } -} -- cgit v1.2.3