Порядок инициализации локальных переменных потока

Цитата из N4713:

Динамическая инициализация нелокальных переменных V и W со статической продолжительностью хранения упорядочена следующим образом:
Если V и W имеют упорядоченную инициализацию и V определяется перед W в пределах одной единицы трансляции, инициализация V выполняется до инициализации W.

Есть ли аналогичный абзац для переменных продолжительности хранения потока? В приведенном ниже коде происходит инициализация V последовательность перед инициализацией W?

thread_local int V = 1;
thread_local int W = V;

Обновлено:

Я хочу изменить код следующим образом:

thread_local string V;
thread_local string W;

1 ответ

С 6.7.2 Продолжительность хранения потока [basic.stc.thread]:

Переменная с продолжительностью хранения потока должна быть инициализирована перед ее первым использованием odr (6.2) и, если она создана, должна быть уничтожена при выходе из потока.

Это означает, что V инициализируется перед `W'.

Другие вопросы по тегам