История изменений
Исправление 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 не умеет в удобную работу с сишными библиотеками. Никто в этом не виноват и никому ничего не должен.