Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/AST/Expr.cpp

    rc4570af3 r46da46b  
    3030#include "Common/SemanticError.h"
    3131#include "GenPoly/Lvalue.h"        // for referencesPermissable
    32 #include "ResolvExpr/Unify.h"      // for extractResultType
     32#include "ResolvExpr/typeops.h"    // for extractResultType
    3333#include "Tuples/Tuples.h"         // for makeTupleType
    3434
     
    222222}
    223223
     224MemberExpr::MemberExpr( const CodeLocation & loc, const DeclWithType * mem, const Expr * agg,
     225    MemberExpr::NoOpConstruction overloadSelector )
     226: Expr( loc ), member( mem ), aggregate( agg ) {
     227        assert( member );
     228        assert( aggregate );
     229        assert( aggregate->result );
     230        (void) overloadSelector;
     231}
     232
    224233bool MemberExpr::get_lvalue() const {
    225234        // This is actually wrong by C, but it works with our current set-up.
     
    379388        stmts.emplace_back( new ExprStmt{ loc, tupleExpr } );
    380389        stmtExpr = new StmtExpr{ loc, new CompoundStmt{ loc, std::move(stmts) } };
     390}
     391
     392TupleAssignExpr::TupleAssignExpr(
     393        const CodeLocation & loc, const Type * result, const StmtExpr * s )
     394: Expr( loc, result ), stmtExpr() {
     395        stmtExpr = s;
    381396}
    382397
Note: See TracChangeset for help on using the changeset viewer.