Changeset b7b8674 for src/InitTweak
- Timestamp:
- Feb 8, 2017, 5:04:20 PM (9 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:
- aa9ee19
- Parents:
- 52c14b3
- Location:
- src/InitTweak
- Files:
-
- 3 edited
-
FixInit.cc (modified) (1 diff)
-
InitTweak.cc (modified) (1 diff)
-
InitTweak.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
src/InitTweak/FixInit.cc
r52c14b3 rb7b8674 1116 1116 // xxx - is the size check necessary? 1117 1117 assert( ctorExpr->has_result() && ctorExpr->get_result()->size() == 1 ); 1118 1119 // xxx - ideally we would reuse the temporary generated from the copy constructor passes from within firstArg if it exists and not generate a temporary if it's unnecessary. 1118 1120 ObjectDecl * tmp = new ObjectDecl( tempNamer.newName(), DeclarationNode::NoStorageClass, LinkageSpec::C, nullptr, ctorExpr->get_result()->clone(), nullptr ); 1119 1121 addDeclaration( tmp ); -
src/InitTweak/InitTweak.cc
r52c14b3 rb7b8674 332 332 return nullptr; 333 333 } 334 } 335 336 DeclarationWithType * getFunction( Expression * expr ) { 337 if ( ApplicationExpr * appExpr = dynamic_cast< ApplicationExpr * >( expr ) ) { 338 return getCalledFunction( appExpr->get_function() ); 339 } else if ( UntypedExpr * untyped = dynamic_cast< UntypedExpr * > ( expr ) ) { 340 return getCalledFunction( untyped->get_function() ); 341 } 342 assertf( false, "getFunction received unknown expression: %s", toString( expr ).c_str() ); 334 343 } 335 344 -
src/InitTweak/InitTweak.h
r52c14b3 rb7b8674 51 51 bool checkInitDepth( ObjectDecl * objDecl ); 52 52 53 /// Non-Null if expr is a call expression whose target function is intrinsic 54 ApplicationExpr * isIntrinsicCallExpr( Expression * expr ); 53 /// returns the declaration of the function called by the expr (must be ApplicationExpr or UntypedExpr) 54 DeclarationWithType * getFunction( Expression * expr ); 55 56 /// Non-Null if expr is a call expression whose target function is intrinsic 57 ApplicationExpr * isIntrinsicCallExpr( Expression * expr ); 55 58 56 59 /// True if stmt is a call statement where the function called is intrinsic and takes one parameter.
Note:
See TracChangeset
for help on using the changeset viewer.