- File:
-
- 1 edited
-
src/ResolvExpr/AlternativeFinder.h (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/ResolvExpr/AlternativeFinder.h
rb6fe7e6 r3b58d91 29 29 public: 30 30 AlternativeFinder( const SymTab::Indexer &indexer, const TypeEnvironment &env ); 31 void find( Expression *expr, bool adjust = false , bool prune = true);31 void find( Expression *expr, bool adjust = false ); 32 32 /// Calls find with the adjust flag set; adjustment turns array and function types into equivalent pointer types 33 void findWithAdjustment( Expression *expr , bool prune = true);33 void findWithAdjustment( Expression *expr ); 34 34 AltList &get_alternatives() { return alternatives; } 35 35 … … 66 66 virtual void visit( TupleExpr *tupleExpr ); 67 67 virtual void visit( ImplicitCopyCtorExpr * impCpCtorExpr ); 68 virtual void visit( ConstructorExpr * ctorExpr );69 68 public: // xxx - temporary hack - should make Tuples::TupleAssignment a friend 69 /// Runs a new alternative finder on each element in [begin, end) 70 /// and writes each alternative finder to out. 70 71 template< typename InputIterator, typename OutputIterator > 71 72 void findSubExprs( InputIterator begin, InputIterator end, OutputIterator out ); … … 73 74 private: 74 75 /// Adds alternatives for member expressions, given the aggregate, conversion cost for that aggregate, and name of the member 75 template< typename StructOrUnionType > void addAggMembers( StructOrUnionType *aggInst, Expression *expr, const Cost &newCost, const TypeEnvironment & env, const std::string &name);76 template< typename StructOrUnionType > void addAggMembers( StructOrUnionType *aggInst, Expression *expr, const Cost &newCost, Expression * member ); 76 77 /// Adds alternatives for offsetof expressions, given the base type and name of the member 77 78 template< typename StructOrUnionType > void addOffsetof( StructOrUnionType *aggInst, const std::string &name );
Note:
See TracChangeset
for help on using the changeset viewer.