C++0x initializer_listとコンストラクタ

以下の場合、どちらのコンストラクタが呼ばれるべきか仕様上明確ではありませんでした。

struct A {
    A(std::initializer_list<int>);
    A();
};

A a = {}; // どちらのコンストラクタが呼ばれる?

N3090のWorking Draftからこれらが明確に規定され、以下のようになります。

struct A {
    A(std::initializer_list<int>); // #1
    A();                           // #2
};

A a1 = {1, 2, 3}; // #1が呼ばれる
A a2 = {};        // #2が呼ばれる


Core Issue 990 Value initialization with multiple initializer-list constructors

N3079 Redrafting: issues 667, 861, 990, 818