Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Common/PassVisitor.proto.h

    r4990812 r0ac366b  
    4747
    4848        operator bool() { return m_ref ? *m_ref : true; }
    49         bool operator=( bool val ) { assert(m_ref); return *m_ref = val; }
     49        bool operator=( bool val ) { return *m_ref = val; }
    5050
    5151private:
     
    5353        friend class ChildrenGuard;
    5454
    55         bool * set( bool * val ) {
     55        bool * set( bool & val ) {
    5656                bool * prev = m_ref;
    57                 m_ref = val;
     57                m_ref = &val;
    5858                return prev;
    5959        }
     
    6767        ChildrenGuard( bool_ref * ref )
    6868                : m_val ( true )
    69                 , m_prev( ref ? ref->set( &m_val ) : nullptr )
     69                , m_prev( ref ? ref->set( m_val ) : nullptr )
    7070                , m_ref ( ref )
    7171        {}
     
    7373        ~ChildrenGuard() {
    7474                if( m_ref ) {
    75                         m_ref->set( m_prev );
     75                        m_ref->set( *m_prev );
    7676                }
    7777        }
Note: See TracChangeset for help on using the changeset viewer.