Changeset 0a81c3f for src/GenPoly/Box.cc
- Timestamp:
- Jul 13, 2017, 1:44:58 PM (6 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
- Children:
- 2463d0e
- Parents:
- c6976ba
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/GenPoly/Box.cc
rc6976ba r0a81c3f 758 758 // if the argument's type is polymorphic, we don't need to box again! 759 759 return; 760 } else if ( arg->get_result()->get_lvalue() ) { 760 } else if ( arg->get_result()->get_lvalue() ) { // xxx - is this still right?? 761 // xxx - dynamic_cast<ReferenceType *>( arg->get_result() )?? 761 762 // VariableExpr and MemberExpr are lvalues; need to check this isn't coming from the second arg of a comma expression though (not an lvalue) 762 763 // xxx - need to test that this code is still reachable … … 1036 1037 assert( appExpr->has_result() ); 1037 1038 assert( ! appExpr->get_args().empty() ); 1038 if ( isPolyType( appExpr->get_result(), scopeTyVars, env ) ) { 1039 if ( isPolyPtr( appExpr->get_result(), scopeTyVars, env ) ) { // dereference returns a reference type 1040 // remove dereference from polymorphic types since they are boxed. 1039 1041 Expression *ret = appExpr->get_args().front(); 1040 1042 delete ret->get_result();
Note: See TracChangeset
for help on using the changeset viewer.