title: Type inference fails on Set made with .toSet?
body: <p>Why is type inference failing here?  </p>
  
  <pre><code>scala&gt; val xs = List(1, 2, 3, 3)
  xs: List[Int] = List(1, 2, 3, 3)
  
  scala&gt; xs.toSet map(_*2)
  &lt;console&gt;:9: error: missing parameter type for expanded function ((x$1) =&gt; x$1.$times(2))
         xs.toSet map(_*2)
  </code></pre>
  
  <p>However, if <code>xs.toSet</code> is assigned, it compiles.</p>
  
  <pre><code>scala&gt; xs.toSet
  res42: scala.collection.immutable.Set[Int] = Set(1, 2, 3)
  
  scala&gt; res42 map (_*2)
  res43: scala.collection.immutable.Set[Int] = Set(2, 4, 6)
  </code></pre>
  
  <p>Also, going the other way, converting to <code>Set</code> from <code>List</code>, and mapping on <code>List</code> complies.</p>
  
  <pre><code>scala&gt; Set(5, 6, 7)
  res44: scala.collection.immutable.Set[Int] = Set(5, 6, 7)
  
  scala&gt; res44.toList map(_*2)
  res45: List[Int] = List(10, 12, 14)
  </code></pre>