URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [g++.dg/] [other/] [pr24623.C] - Rev 693
Compare with Previous | Blame | View Log
/* This used to ICE due to a backend problem on s390. *//* { dg-do compile } *//* { dg-options "-O1" } */class ReferenceCounted{public:virtual ~ ReferenceCounted (){}void decrementRefCount () const{if (--const_cast < unsigned int &>(_ref_count) == 0){delete this;}}unsigned int _ref_count;};template < class T > class RefCountPointer{public:RefCountPointer (T * p = 0):_p (p){}RefCountPointer & operator= (const RefCountPointer < T > &o){if (_p != o._p){if (_p != 0)_p->decrementRefCount ();}}~RefCountPointer (){}T *_p;};class Item:public ReferenceCounted{public:typedef RefCountPointer < const Item > Ptr;};class AnyAtomicType:public Item{};class StaticContext{};class DynamicContext:public StaticContext{};class SortableItem{SortableItem ();int m_bAscending:1;DynamicContext *m_context;AnyAtomicType::Ptr m_item;};SortableItem::SortableItem (){m_context = __null;m_item = __null;}
