If
V and
W have ordered initialization and
the definition of
V
is appearance-ordered before the definition of
W, or
if
V has partially-ordered initialization,
W does not have unordered initialization, and
for every definition
E of
W
there exists a definition
D of
V
such that
D is appearance-ordered before
E, then
- if the program does not start a thread ([intro.multithread])
other than the main thread ([basic.start.main])
or V and W have ordered initialization and
they are defined in the same translation unit,
the initialization of V
is sequenced before
the initialization of W;
- otherwise,
the initialization of V
strongly happens before
the initialization of W.