Принят RFC: временные значения в хвостовом выражении освобождаются раньше локальных переменных

06.05.2024

Принят RFC, меняющий порядок освобождения памяти: временные значения, созданные в хвостовом выражении блока, уничтожаются раньше локальных переменных этого блока.

Зачем

Сейчас порядок обратный, и из-за него возникают типовые дедлоки: держатель блокировки живёт в локальной переменной, а её «напарник» — во временном значении, и освобождение одного ждёт другого. Изменение требует редакции, поэтому отложено до 2024 года.

Дата — 6 мая 2024 года, день одобрения.

Оригинал

RFC: Drop temporaries in tail expressions before local variables

Упоминаний: 1 · Просмотров: 2