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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions