Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/ResolvExpr/Unify.cc

    raefcc3b r89e6ffc  
    6060                virtual void visit(TupleType *tupleType);
    6161                virtual void visit(VarArgsType *varArgsType);
     62                virtual void visit(ZeroType *zeroType);
     63                virtual void visit(OneType *oneType);
    6264
    6365                template< typename RefType > void handleRefType( RefType *inst, Type *other );
     
    588590        }
    589591
    590         // xxx - compute once and store in the FunctionType?
    591         Type * extractResultType( FunctionType * function ) {
    592                 if ( function->get_returnVals().size() == 0 ) {
    593                         return new VoidType( Type::Qualifiers() );
    594                 } else if ( function->get_returnVals().size() == 1 ) {
    595                         return function->get_returnVals().front()->get_type()->clone();
    596                 } else {
    597                         TupleType * tupleType = new TupleType( Type::Qualifiers() );
    598                         for ( DeclarationWithType * decl : function->get_returnVals() ) {
    599                                 tupleType->get_types().push_back( decl->get_type()->clone() );
    600                         } // for
    601                         return tupleType;
    602                 }
     592        void Unify::visit(ZeroType *zeroType) {
     593                result = dynamic_cast< ZeroType* >( type2 );
     594        }
     595
     596        void Unify::visit(OneType *oneType) {
     597                result = dynamic_cast< OneType* >( type2 );
    603598        }
    604599
Note: See TracChangeset for help on using the changeset viewer.