Hi all,

I am writing to propose using C++11 uniform initializer syntax in member 
initializer lists. The following:

class A {
public:
    A(B&& b, float i, int j)
    : m_b(WTFMove(b))
    , m_i(i)
    , m_j(j)
    {
    }
...
};

Would become:

class A {
public:
    A(B&& b, float i, int j)
    : m_b { WTFMove(b) }
    , m_i { i }
    , m_j { j }
    {
    }
...
};

Using uniform initializer syntax in member initializer lists would make the 
syntax we use for member initializer lists consistent with the syntax we use 
for non-static data member initializers. It would also cause a compile time 
error if member initialization required a narrowing conversion (e.g. implicit 
float to int conversion). Another benefit of using this syntax is that it 
allows initialization of a struct using aggregate initialization.

Dan
_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to