On Thu, Nov 6, 2025 at 6:54 PM Miguel Ojeda
<[email protected]> wrote:
>
> Bisecting nightlies, it seemed to happen between:
>
> rustc 1.91.0-nightly (12eb345e5 2025-09-07)
> rustc 1.91.0-nightly (9c27f27ea 2025-09-08)
Ok, for reference, it was upstream's ab91a63d403b ("Ignore intrinsic
calls in cross-crate-inlining cost model"): the object file stops
containing DWARF debug information because the `Default`
implementations contained `write_bytes()` calls which are now ignored
in that cost model and so everything is essentially as if `#[inline]`.
If one generates the bindings without the `Debug` impls, indeed the
file stops containing DWARF even in Rust 1.90.0.
For the moment, we can just skip `gendwarfksyms` starting with Rust
1.91.0 (sending a quick patch for that), but it may be a bit brittle
in that new versions could again re-introduce some symbols that get
exported from that one etc.
Sami, would it make sense to "auto-skip" in `gendwarfksyms` itself if
an object file does not have anything interesting and then remove that
from the `Makefile`?
Thanks!
Cheers,
Miguel