I have some doubts about construction and initialization order guarantees in C++. For instance, the following code has four classes X, Y, Z>
X
Y
Z>