title: Short circuiting not working
body: <p>It was my understanding that C# conditional operators perform short circuiting. However, my program throws an exception while running this code. Index is equal to -1, so the second condition should never execute, but I get an index out of bounds exception.</p>
  
  <pre><code>if (index != -1 || pieces[index].Type != PieceType.Rook)
  {
      allowed = false;
  }
  </code></pre>