 +            return CanInlineResult.NO;
 +          }
 +        }
-+
 +        fnParam = fnParam.getNext();
 +      }
        // Limit the inlining

     }
 
+    Node block = fnNode.getLastChild();
+
     // CALL NODE: [ NAME, ARG1, ARG2, ... ]
     Node cArg = callNode.getFirstChild().getNext();
 
@@ -719,17 +713,25 @@ class FunctionInjector {
       }
     }
 

-      FunctionArgumentInjector.maybeAddTempsForCallArguments(
-          fnNode, args, allNamesToAlias, compiler.getCodingConvention());
-      if (!allNamesToAlias.isEmpty()) {
+      if (cArg != null) {
+        if (NodeUtil.mayHaveSideEffects(cArg, compiler)) {
         return CanInlineResult.NO;
+        }
+        cArg = cArg.getNext();
       }
