ExpressionPtr AssignmentExpression::makeIdCall(AnalysisResultPtr ar) {
  ExpressionListPtr arg =
    ExpressionListPtr(new ExpressionList(getLocation(),
                                         Expression::KindOfExpressionList));
  arg->insertElement(m_value);
  SimpleFunctionCallPtr result =
    SimpleFunctionCallPtr(
      new SimpleFunctionCall(getLocation(),
                             Expression::KindOfSimpleFunctionCall,
                             "id", arg, NULL));
  result->setFunctionAndClassScope(ar->findHelperFunction("id"),
                                   ClassScopePtr());
  result->setValid();
  result->setNoPrefix();
  result->setActualType(m_value->getActualType());
  result->setExpectedType(m_expectedType);
  return result;
}