Rust неявно добавляет #[inline] к derive-реализациям, раздувая бинарники
Rust's derive often implies inline
Автор обнаружил, что Rust автоматически помечает #[inline] методы, сгенерированные через #[derive(...)]. Это почти всегда полезно, но в глубоко вложенных иерархиях ошибок может привести к значительному раздуванию бинарного файла: в проекте uv удалось уменьшить размер примерно на 160 КБ, запретив инлайнинг одной из реализаций Debug с помощью собственного макроса с #[inline(never)].
мы обнаружили, что смогли уменьшить размер бинарного файла uv примерно на 160 КБ, запретив rustc инлайнить данную реализацию Debug.