title: std::max() and std::min() not constexpr
body: <p>I just noticed that the new standard defines <code>min(a,b)</code> and <code>max(a,b)</code> <strong>without</strong> <code>constexpr</code>.</p>
  
  <p>Examples from 25.4.7, [alg.min.max]:</p>
  
  <pre><code>template&lt;class T&gt; const T&amp; min(const T&amp; a, const T&amp; b);
  template&lt;class T&gt; T min(initializer_list&lt;T&gt; t);
  </code></pre>
  
  <p>Isn't this a pity? I would have liked to write</p>
  
  <pre><code>char data[ max(sizeof(A),sizeof(B)) ];
  </code></pre>
  
  <p>instead of</p>
  
  <pre><code>char data[ sizeof(A) &gt; sizeof(B) ? sizeof(A) : sizeof(B) ];
  char data[ MAX(sizeof(A),sizeof(B)) ]; // using a macro
  </code></pre>
  
  <p>Any reason why those <strong>can not be <code>constexpr</code></strong>?</p>