LINUX.ORG.RU

История изменений

Исправление Serral, (текущая версия) :

При чём тут bindgen? Это вообще сторонняя тулза. Речь про сам язык, ака extern «C» fn и memory layout.

Так это ты про ABI, а не API. А API это в том числе и макросы, и типы, и сигнатуры функций (с возможной реализацией) в сишном хедере. Ничего этого Rust не умеет.

Ну и напомню, что это некорректный код даже в C++, ибо designator initialization только с C++20.

Но при этом поддержка в компиляторах уже есть.

То есть раст виноват в том, что сишка - это окаменелый УГ?

Нет, просто Rust не умеет в удобную работу с сишными библиотеками. Никто в этом не виноват и никому ничего не должен.

Исходная версия Serral, :

При чём тут bindgen? Это вообще сторонняя тулза. Речь про сам язык, ака extern «C» fn и memory layout.

Так это ты про ABI, а не API. А API это в том числе и макросы, и типы, и сигнатуры функций в сишном хедере. Ничего этого Rust не умеет.

Ну и напомню, что это некорректный код даже в C++, ибо designator initialization только с C++20.

Но при этом поддержка в компиляторах уже есть.

То есть раст виноват в том, что сишка - это окаменелый УГ?

Нет, просто Rust не умеет в удобную работу с сишными библиотеками. Никто в этом не виноват и никому ничего не должен.