title: Why don't complex-number literals work in clang?
body: <p>When I run this code <a href="https://ideone.com/HdviA2">on ideone.com</a>, it prints <code>(2,3)</code>:</p>
  
  <pre><code>#include &lt;iostream&gt;
  #include &lt;complex&gt;
  
  int main() {
      std::complex&lt;double&gt; val = 2 + 3i;
      std::cout &lt;&lt; val &lt;&lt; std::endl;
      return 0;
  }
  </code></pre>
  
  <p>But when I use clang on macOS 10.11.6, I get no errors or warnings, but the output is  <code>(2,0)</code>:</p>
  
  <pre class="lang-none prettyprint-override"><code>$ clang --version
  Apple LLVM version 7.3.0 (clang-703.0.31)
  Target: x86_64-apple-darwin15.6.0
  
  $ clang -lc++ test.cpp &amp;&amp; ./a.out
  (2,0)
  </code></pre>
  
  <p>What happened to the imaginary part? Am I doing something wrong?</p>