title: Problem with the ternary operator in fold
body: <p>Consider a simple Collection, searching the min and max in one iteration:</p>
  
  <pre><code>val v = Vector (2, 1, 3, 5, 4)
  val mima = (v(0), v(0))
  val mami = (mima /: v) {case ((a, b), c) =&gt; if (c&lt;a) (c, b) else if (c&gt;b) (a, c) else (a, b)}
  </code></pre>
  
  <p>So far, so straight forward. 
  If I replace the if/else with the ternary operator (X ? Y : Z), it doesn't work; I get an error: </p>
  
  <pre><code>    val mami = (mima /: v) {case ((a, b), c) =&gt; (c&lt;a) ? (c, b) : (c&gt;b) ? (a, c) : (a, b)}
  &lt;console&gt;:1: ';' expected but : found. 
  </code></pre>
  
  <p>at the last colon. Adding parens didn't help:</p>
  
  <pre><code>    val mami = (mima /: v) {case ((a, b), c) =&gt; (c&lt;a) ? (c, b) : ((c&gt;b) ? (a, c) : (a, b))}
  </code></pre>
  
  <p>Do I make a silly mistake or is there is a subtle problem with the nested ternary operator? </p>
  
  <p>Hunting this problem down, it isn't related to folds, only:</p>
  
  <pre><code>if (c &lt; 4) "small" else if (c &gt; 8) "big" else "medium"
  </code></pre>
  
  <p>works</p>
  
  <pre><code>(c &lt; 4) ? "small" : (c &gt; 8) ? "big" : "medium" 
  </code></pre>
  
  <p>fails the same way.</p>