Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/AST/Expr.hpp

    r20de6fb r17a0228a  
    3030#define MUTATE_FRIEND template<typename node_t> friend node_t * mutate(const node_t * node);
    3131
    32 class ConverterOldToNew;
    33 
    3432namespace ast {
    3533
     
    108106                        case Params: assert(!"Cannot return to resnSlots from Params");
    109107                        }
    110                         return *((ResnSlots*)nullptr);
    111                 }
    112 
    113                 const ResnSlots& resnSlotsConst() const {
    114                         if (mode == Slots) {
    115                                 return data.resnSlots;
    116                         }
    117                         assert(!"Mode was not already resnSlots");
    118                         return *((ResnSlots*)nullptr);
    119108                }
    120109
     
    125114                        case Params: return data.inferParams;
    126115                        }
    127                         return *((InferredParams*)nullptr);
    128                 }
    129 
    130                 const InferredParams& inferParamsConst() const {
    131                         if (mode == Params) {
    132                                 return data.inferParams;
    133                         }
    134                         assert(!"Mode was not already Params");
    135                         return *((InferredParams*)nullptr);
    136116                }
    137117        };
     
    530510        std::vector<ptr<ObjectDecl>> tempDecls;
    531511        std::vector<ptr<ObjectDecl>> returnDecls;
    532         std::vector<ptr<Expr>> dtors;
     512        std::vector<ptr<ObjectDecl>> dtors;
    533513
    534514        ImplicitCopyCtorExpr( const CodeLocation& loc, const ApplicationExpr * call )
     
    637617
    638618        const Expr * accept( Visitor & v ) const override { return v.visit( this ); }
    639 
    640         friend class ::ConverterOldToNew;
    641 
    642619private:
    643620        TupleAssignExpr * clone() const override { return new TupleAssignExpr{ *this }; }
    644     TupleAssignExpr( const CodeLocation & loc, const Type * result, const StmtExpr * s );
    645 
    646621        MUTATE_FRIEND
    647622};
Note: See TracChangeset for help on using the changeset viewer.