title: Implementation of type "long double" with GCC and C++11
body: <p>I've tried searching for information on long double, and so far I understand it is implemented differently by compilers.</p>
  
  <p>When using GCC on Ubuntu (XUbuntu) Linux 12.10 I get this:</p>
  
  <pre><code>double PId = acos(-1);
  long double PIl = acos(-1);
  std::cout.precision(100);
  
  std::cout &lt;&lt; "PId " &lt;&lt; sizeof(double) &lt;&lt; " : " &lt;&lt; PId &lt;&lt; std::endl;
  std::cout &lt;&lt; "PIl " &lt;&lt; sizeof(long double)  &lt;&lt; " : " &lt;&lt; PIl &lt;&lt; std::endl;
  </code></pre>
  
  <p>Output:</p>
  
  <pre><code>PId 8  : 3.141592653589793115997963468544185161590576171875
  PIl 16 : 3.141592653589793115997963468544185161590576171875
  </code></pre>
  
  <p>Anyone understand why they output (almost) the same thing?</p>