Changeset a5a71d0 for src/ResolvExpr
- Timestamp:
- Apr 6, 2016, 5:11:32 PM (9 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, ctor, deferred_resn, demangler, enum, forall-pointer-decay, gc_noraii, jacob/cs343-translation, jenkins-sandbox, master, memory, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
- Children:
- eab39cd
- Parents:
- 39786813 (diff), 3aba311 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - Location:
- src/ResolvExpr
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
src/ResolvExpr/AdjustExprType.cc
r39786813 ra5a71d0 10 10 // Created On : Sat May 16 23:41:42 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Sat May 16 23:54:02 201513 // Update Count : 312 // Last Modified On : Wed Mar 2 17:34:53 2016 13 // Update Count : 4 14 14 // 15 15 … … 33 33 virtual Type* mutate( UnionInstType *aggregateUseType ); 34 34 virtual Type* mutate( EnumInstType *aggregateUseType ); 35 virtual Type* mutate( ContextInstType *aggregateUseType );35 virtual Type* mutate( TraitInstType *aggregateUseType ); 36 36 virtual Type* mutate( TypeInstType *aggregateUseType ); 37 37 virtual Type* mutate( TupleType *tupleType ); … … 87 87 } 88 88 89 Type *AdjustExprType::mutate( ContextInstType *aggregateUseType ) {89 Type *AdjustExprType::mutate( TraitInstType *aggregateUseType ) { 90 90 return aggregateUseType; 91 91 } -
src/ResolvExpr/CommonType.cc
r39786813 ra5a71d0 10 10 // Created On : Sun May 17 06:59:27 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Sun May 17 07:04:50 201513 // Update Count : 212 // Last Modified On : Wed Mar 2 17:35:34 2016 13 // Update Count : 3 14 14 // 15 15 … … 35 35 virtual void visit( UnionInstType *aggregateUseType ); 36 36 virtual void visit( EnumInstType *aggregateUseType ); 37 virtual void visit( ContextInstType *aggregateUseType );37 virtual void visit( TraitInstType *aggregateUseType ); 38 38 virtual void visit( TypeInstType *aggregateUseType ); 39 39 virtual void visit( TupleType *tupleType ); … … 186 186 } 187 187 188 void CommonType::visit( ContextInstType *aggregateUseType ) {188 void CommonType::visit( TraitInstType *aggregateUseType ) { 189 189 } 190 190 -
src/ResolvExpr/ConversionCost.cc
r39786813 ra5a71d0 10 10 // Created On : Sun May 17 07:06:19 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Sun May 17 07:22:19 201513 // Update Count : 412 // Last Modified On : Wed Mar 2 17:35:46 2016 13 // Update Count : 6 14 14 // 15 15 … … 206 206 } 207 207 208 void ConversionCost::visit( ContextInstType *inst) {208 void ConversionCost::visit(TraitInstType *inst) { 209 209 } 210 210 … … 249 249 250 250 void ConversionCost::visit(VarArgsType *varArgsType) { 251 if ( VarArgsType *destAsVarArgs =dynamic_cast< VarArgsType* >( dest ) ) {251 if ( dynamic_cast< VarArgsType* >( dest ) ) { 252 252 cost = Cost::zero; 253 253 } -
src/ResolvExpr/ConversionCost.h
r39786813 ra5a71d0 10 10 // Created On : Sun May 17 09:37:28 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Sun May 17 09:39:23 201513 // Update Count : 212 // Last Modified On : Wed Mar 2 17:35:56 2016 13 // Update Count : 3 14 14 // 15 15 … … 37 37 virtual void visit(UnionInstType *aggregateUseType); 38 38 virtual void visit(EnumInstType *aggregateUseType); 39 virtual void visit( ContextInstType *aggregateUseType);39 virtual void visit(TraitInstType *aggregateUseType); 40 40 virtual void visit(TypeInstType *aggregateUseType); 41 41 virtual void visit(TupleType *tupleType); -
src/ResolvExpr/PtrsAssignable.cc
r39786813 ra5a71d0 9 9 // Author : Richard C. Bilson 10 10 // Created On : Sun May 17 11:44:11 2015 11 // Last Modified By : Rob Schluntz12 // Last Modified On : Mon Sep 21 14:34:58 201513 // Update Count : 711 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed Mar 2 17:36:05 2016 13 // Update Count : 8 14 14 // 15 15 … … 35 35 virtual void visit( UnionInstType *inst ); 36 36 virtual void visit( EnumInstType *inst ); 37 virtual void visit( ContextInstType *inst );37 virtual void visit( TraitInstType *inst ); 38 38 virtual void visit( TypeInstType *inst ); 39 39 virtual void visit( TupleType *tupleType ); … … 101 101 } 102 102 103 void PtrsAssignable::visit( ContextInstType *inst ) {103 void PtrsAssignable::visit( TraitInstType *inst ) { 104 104 // I definitely don't think we should be doing anything here 105 105 } -
src/ResolvExpr/PtrsCastable.cc
r39786813 ra5a71d0 9 9 // Author : Richard C. Bilson 10 10 // Created On : Sun May 17 11:48:00 2015 11 // Last Modified By : Rob Schluntz12 // Last Modified On : Mon Oct 05 14:49:12 201513 // Update Count : 711 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed Mar 2 17:36:18 2016 13 // Update Count : 8 14 14 // 15 15 … … 36 36 virtual void visit(UnionInstType *inst); 37 37 virtual void visit(EnumInstType *inst); 38 virtual void visit( ContextInstType *inst);38 virtual void visit(TraitInstType *inst); 39 39 virtual void visit(TypeInstType *inst); 40 40 virtual void visit(TupleType *tupleType); … … 116 116 117 117 void PtrsCastable::visit(EnumInstType *inst) { 118 if ( dynamic_cast< EnumInstType* >( inst ) ) {118 if ( dynamic_cast< EnumInstType* >( dest ) ) { 119 119 result = 1; 120 } else if ( BasicType *bt = dynamic_cast< BasicType* >( inst ) ) {120 } else if ( BasicType *bt = dynamic_cast< BasicType* >( dest ) ) { 121 121 if ( bt->get_kind() == BasicType::SignedInt ) { 122 122 result = 0; … … 129 129 } 130 130 131 void PtrsCastable::visit( ContextInstType *inst) {131 void PtrsCastable::visit(TraitInstType *inst) { 132 132 // I definitely don't think we should be doing anything here 133 133 } -
src/ResolvExpr/RenameVars.cc
r39786813 ra5a71d0 10 10 // Created On : Sun May 17 12:05:18 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Mon Jun 8 14:51:35 201513 // Update Count : 412 // Last Modified On : Wed Mar 2 17:36:32 2016 13 // Update Count : 5 14 14 // 15 15 … … 86 86 } 87 87 88 void RenameVars::visit( ContextInstType *aggregateUseType ) {88 void RenameVars::visit( TraitInstType *aggregateUseType ) { 89 89 typeBefore( aggregateUseType ); 90 90 acceptAll( aggregateUseType->get_parameters(), *this ); -
src/ResolvExpr/RenameVars.h
r39786813 ra5a71d0 10 10 // Created On : Sun May 17 12:10:28 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Sun May 17 12:11:53 201513 // Update Count : 212 // Last Modified On : Wed Mar 2 17:36:39 2016 13 // Update Count : 3 14 14 // 15 15 … … 40 40 virtual void visit( UnionInstType *aggregateUseType ); 41 41 virtual void visit( EnumInstType *aggregateUseType ); 42 virtual void visit( ContextInstType *aggregateUseType );42 virtual void visit( TraitInstType *aggregateUseType ); 43 43 virtual void visit( TypeInstType *aggregateUseType ); 44 44 virtual void visit( TupleType *tupleType ); -
src/ResolvExpr/Resolver.cc
r39786813 ra5a71d0 10 10 // Created On : Sun May 17 12:17:01 2015 11 11 // Last Modified By : Rob Schluntz 12 // Last Modified On : Wed Mar 30 15:47:19201612 // Last Modified On : Mon Apr 04 17:11:54 2016 13 13 // Update Count : 203 14 14 // … … 167 167 Type *new_type = resolveTypeof( objectDecl->get_type(), *this ); 168 168 objectDecl->set_type( new_type ); 169 // To handle initialization of routine pointers, e.g., int (*fp)(int) = foo(), means that class-variable 170 // initContext is changed multiple time because the LHS is analysed twice. The second analysis changes 171 // initContext because of a function type can contain object declarations in the return and parameter types. So 172 // each value of initContext is retained, so the type on the first analysis is preserved and used for selecting 173 // the RHS. 174 Type *temp = initContext; 169 175 initContext = new_type; 170 176 SymTab::Indexer::visit( objectDecl ); 177 initContext = temp; 171 178 } 172 179 -
src/ResolvExpr/Unify.cc
r39786813 ra5a71d0 9 9 // Author : Richard C. Bilson 10 10 // Created On : Sun May 17 12:27:10 2015 11 // Last Modified By : Rob Schluntz12 // Last Modified On : Wed Sep 02 14:43:22 201513 // Update Count : 3 611 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed Mar 2 17:37:05 2016 13 // Update Count : 37 14 14 // 15 15 … … 56 56 virtual void visit(UnionInstType *aggregateUseType); 57 57 virtual void visit(EnumInstType *aggregateUseType); 58 virtual void visit( ContextInstType *aggregateUseType);58 virtual void visit(TraitInstType *aggregateUseType); 59 59 virtual void visit(TypeInstType *aggregateUseType); 60 60 virtual void visit(TupleType *tupleType); … … 541 541 } 542 542 543 void Unify::visit( ContextInstType *contextInst) {543 void Unify::visit(TraitInstType *contextInst) { 544 544 handleRefType( contextInst, type2 ); 545 545 }
Note:
See TracChangeset
for help on using the changeset viewer.