Changeset 54e41b3 for src/ResolvExpr
- Timestamp:
- May 16, 2019, 1:46:28 PM (6 years ago)
- Branches:
- ADT, arm-eh, ast-experimental, cleanup-dtors, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
- Children:
- 24afc53
- Parents:
- 89c2f7c9
- Location:
- src/ResolvExpr
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
src/ResolvExpr/Unify.cc
r89c2f7c9 r54e41b3 21 21 #include <string> // for string, operator==, operator!=, bas... 22 22 #include <utility> // for pair, move 23 23 #include <vector> 24 25 #include "AST/Node.hpp" 26 #include "AST/Type.hpp" 24 27 #include "Common/PassVisitor.h" // for PassVisitor 25 28 #include "FindOpenVars.h" // for findOpenVars … … 630 633 } 631 634 632 // xxx - compute once and store in the FunctionType?633 635 Type * extractResultType( FunctionType * function ) { 634 636 if ( function->get_returnVals().size() == 0 ) { … … 644 646 } 645 647 } 648 649 ast::ptr<ast::Type> extractResultType( const ast::FunctionType * func ) { 650 assert(!"restore after AST added to build"); 651 // if ( func->returns.empty() ) return new ast::VoidType{}; 652 // if ( func->returns.size() == 1 ) return func->returns[0]->get_type(); 653 654 // std::vector<ast::ptr<ast::Type>> tys; 655 // for ( const ast::DeclWithType * decl : func->returns ) { 656 // tys.emplace_back( decl->get_type() ); 657 // } 658 // return new ast::TupleType{ std::move(tys) }; 659 } 646 660 } // namespace ResolvExpr 647 661 -
src/ResolvExpr/typeops.h
r89c2f7c9 r54e41b3 18 18 #include <vector> 19 19 20 #include "AST/Node.hpp" 21 #include "AST/Type.hpp" 20 22 #include "SynTree/SynTree.h" 21 23 #include "SynTree/Type.h" … … 99 101 /// creates the type represented by the list of returnVals in a FunctionType. The caller owns the return value. 100 102 Type * extractResultType( FunctionType * functionType ); 103 /// Creates or extracts the type represented by the list of returns in a `FunctionType`. 104 ast::ptr<ast::Type> extractResultType( const ast::FunctionType * func ); 101 105 102 106 // in CommonType.cc
Note: See TracChangeset
for help on using the changeset viewer.