Changeset 92538ab for src/AST/Node.cpp


Ignore:
Timestamp:
Apr 10, 2022, 2:53:18 PM (4 years ago)
Author:
JiadaL <j82liang@…>
Branches:
ADT, ast-experimental, enum, master, pthread-emulation, qualifiedEnum
Children:
d8e2a09
Parents:
4559b34 (diff), 6256891 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Resolve conflict

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/AST/Node.cpp

    r4559b34 r92538ab  
    99// Author           : Thierry Delisle
    1010// Created On       : Thu May 16 14:16:00 2019
    11 // Last Modified By : Peter A. Buhr
    12 // Last Modified On : Tue Feb  1 09:09:39 2022
    13 // Update Count     : 3
     11// Last Modified By : Andrew Beach
     12// Last Modified On : Fri Mar 25 10:30:00 2022
     13// Update Count     : 4
    1414//
    1515
     
    1919#include <csignal>  // MEMORY DEBUG -- for raise
    2020#include <iostream>
     21#include <utility>
    2122
    2223#include "Attribute.hpp"
     
    7677void ast::ptr_base<node_t, ref_t>::_check() const {
    7778        // if(node) assert(node->was_ever_strong == false || node->strong_count > 0);
     79}
     80
     81template< typename node_t, enum ast::Node::ref_type ref_t >
     82void ast::ptr_base<node_t, ref_t>::swap( ptr_base & other ) noexcept {
     83        std::swap( this->node, other.node );
     84        _trap( this->node );
     85        _trap( other.node );
    7886}
    7987
     
    152160template class ast::ptr_base< ast::SwitchStmt, ast::Node::ref_type::weak >;
    153161template class ast::ptr_base< ast::SwitchStmt, ast::Node::ref_type::strong >;
    154 template class ast::ptr_base< ast::CaseStmt, ast::Node::ref_type::weak >;
    155 template class ast::ptr_base< ast::CaseStmt, ast::Node::ref_type::strong >;
     162template class ast::ptr_base< ast::CaseClause, ast::Node::ref_type::weak >;
     163template class ast::ptr_base< ast::CaseClause, ast::Node::ref_type::strong >;
    156164template class ast::ptr_base< ast::BranchStmt, ast::Node::ref_type::weak >;
    157165template class ast::ptr_base< ast::BranchStmt, ast::Node::ref_type::strong >;
     
    162170template class ast::ptr_base< ast::TryStmt, ast::Node::ref_type::weak >;
    163171template class ast::ptr_base< ast::TryStmt, ast::Node::ref_type::strong >;
    164 template class ast::ptr_base< ast::CatchStmt, ast::Node::ref_type::weak >;
    165 template class ast::ptr_base< ast::CatchStmt, ast::Node::ref_type::strong >;
    166 template class ast::ptr_base< ast::FinallyStmt, ast::Node::ref_type::weak >;
    167 template class ast::ptr_base< ast::FinallyStmt, ast::Node::ref_type::strong >;
     172template class ast::ptr_base< ast::CatchClause, ast::Node::ref_type::weak >;
     173template class ast::ptr_base< ast::CatchClause, ast::Node::ref_type::strong >;
     174template class ast::ptr_base< ast::FinallyClause, ast::Node::ref_type::weak >;
     175template class ast::ptr_base< ast::FinallyClause, ast::Node::ref_type::strong >;
    168176template class ast::ptr_base< ast::WaitForStmt, ast::Node::ref_type::weak >;
    169177template class ast::ptr_base< ast::WaitForStmt, ast::Node::ref_type::strong >;
Note: See TracChangeset for help on using the changeset viewer.