               # Inline function definitions that appear as the last arg
               # of a function call will be melded into the parent block.
               @addCode arg, depth + 1, indentDepth
-            else if index is 0 and node.args.length is 1
+            else if not known and hasCallParen and index is 0 and node.args.length is 1
               @csSocketAndMark arg, depth + 1, precedence, indentDepth, null, known?.fn?.dropdown?[index], ''
             else
               @csSocketAndMark arg, depth + 1, precedence, indentDepth, null, known?.fn?.dropdown?[index]

      # We will not add a socket around @variable when it
      # is only some text
      when 'Call'
        if node.variable?
          namenodes = @functionNameNodes node
          known = @lookupFunctionName namenodes

            classes = ANY_DROP
          @csBlock node, depth, 0, wrappingParen, classes

          variableBounds = @getBounds(node.variable)
          hasCallParen = (@lines[variableBounds.end.line][variableBounds.end.column] == '(')

          # Some function names (like /// RegExps ///) are never editable.
          if @implicitName namenodes
            # do nothing
