Вызывает ли int a=1, b=a++;
поведение undefined? Между инициализацией a
и ее доступом и модификацией в инициализаторе для b
не существует последовательности точек последовательности, но, насколько я могу судить, инициализация не является "модификацией" объекта; инициализатор указан, чтобы дать "начальное значение" объекта. Per 6.7.8 Инициализация, пункт 8:
Инициализатор определяет начальное значение, хранящееся в объекте.
и кажется разумным взять "начальную" как секвенированную перед любым доступом к объекту. Рассматривался ли этот вопрос раньше, и есть ли принятая интерпретация?