Skip to content

Panics with assertion failed: core::mem::size_of::<VariationTuple>() <= 80 #205

@lovelymono

Description

@lovelymono

Same as rust-windowing/winit#4433.

You appear to be hitting a debug_assert in https://github.com/harfbuzz/ttf-parser. I suspect due to the nightly rustc version you're using increasing the size of the struct the assert runs on. You may wish to consider filing an issue there.

Description

Running a winit application fails with

thread 'main' (50531) panicked at /home/stella/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ttf-parser-0.25.1/src/tables/gvar.rs:283:5:
assertion failed: core::mem::size_of::<VariationTuple>() <= 80

Platform details

Rust version:

rustc 1.93.0-nightly (646a3f8c1 2025-12-02)
cargo 1.93.0-nightly (2a7c49606 2025-11-25)

Operating system, windowing system:

NixOS, nixos-unstable github:NixOS/nixpkgs/2d293cbfa5a793b4c50d17c05ef9e385b90edf6c
GNOME 49, Wayland

Additional information

Output of RUST_BACKTRACE=full https://gist.github.com/lovelymono/92b8899270d610a25ef0e5378701924a.

Source code:

#[must_use]
fn real_main() -> iced::Result {
    iced::application("Howl", Howl::update, Howl::view).run()
}

fn main() -> std::process::ExitCode {
    match real_main() {
        Ok(()) => std::process::ExitCode::SUCCESS,
        Err(e) => {
            eprintln!("{e:?}");
            std::process::ExitCode::FAILURE
        },
    }
}

#[derive(Debug)]
enum Message {
}

#[derive(Default)]
struct Howl {}

impl Howl {
    fn update(&mut self, _: Message) {
        
    }

    fn view(&self) -> iced::Element<'_, Message> {
        "waow".into()
    }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions