Описание тега compound-literals
Семантика
Постфиксное выражение, состоящее из заключенного в скобки имени типа, за которым следует заключенный в фигурные скобки список инициализаторов, является составным литералом. Он предоставляет безымянный объект, значение которого задается списком инициализаторов.
Если имя типа определяет массив неизвестного размера, размер определяется списком инициализаторов, как указано в 6.7.9, а тип составного литерала - это тип завершенного массива. В противном случае (когда имя типа указывает тип объекта), тип составного литерала - это тот, который указан в имени типа. В любом случае результатом будет lvalue.
Значение составного литерала - это значение безымянного объекта, инициализированного списком инициализаторов. Если составной литерал встречается вне тела функции, объект имеет статическую продолжительность хранения; в противном случае у него есть автоматическая продолжительность хранения, связанная с охватывающим блоком.