lib/Hask/WorkerWrapperPass.cpp
// TODO: we need to know which argument was forced.
we need to know which argument was forced.
we need to know which argument was forced .
FunctionType mkForcedFnType(FunctionType fty) {
  SmallVector<Type, 4> forcedTys;
  for (Type ty : fty.getInputs()) {
    ThunkType thunkty = ty.dyn_cast<ThunkType>();
    assert(thunkty);
    forcedTys.push_back(thunkty.getElementType());
  }
  return FunctionType::get(fty.getContext(), forcedTys, fty.getResult(0));
}
FunctionType mkForcedFnType ( FunctionType fty ) { SmallVector < Type , 4 > forcedTys ; for ( Type ty : fty . getInputs ( ) ) { ThunkType thunkty = ty . dyn_cast < ThunkType > ( ) ; assert ( thunkty ) ; forcedTys . push_back ( thunkty . getElementType ( ) ) ; } return FunctionType :: get ( fty . getContext ( ) , forcedTys , fty . getResult ( 0 ) ) ; }
TODO: we need to know which argument was forced.
TODO : we need to know which argument was forced .