title: C++ default member initialization and constructors
body: <p>I would like to know where I can find some documentation about the following behavior:</p>
  <pre><code>class Foo {
  public:
    Foo(int argX) : Foo(argX, defaultYValue) {}
    Foo(int argX, int argY) : x(argX), y(argY) {};
  private:
    const int x;
    const int y;
    const int defaultYValue = -1;
  }
  </code></pre>
  <p>Might it be possible that y value is undefined ? Or is there some documentation in the standard that tells that it works (I did noticed that the default member initialization is discarded if it is otherwise overridden inside the constructor)</p>
  <p>PS: this was discovered while forgetting the static for defaultYValue.</p>