Skip to content

Assertion failure in post_return() for functions returning error-context #1413

@kavoc-brown

Description

@kavoc-brown

Summary

wit-bindgen panics with "assertion failed: sig.retptr" when generating bindings for a WIT world that exports a function returning error-context.

Environment

  • wit-bindgen version: 0.47.0
  • Affected generator: Rust
  • OS: Ubuntu 22.04, x86-64

Steps to Reproduce

  1. Create a minimal WIT file

    Save the following as test.wit:

    package poc:demo;
    
    world retptr-bug {
      export get-error: func() -> error-context;
    }
  2. Run wit-bindgen

    wit-bindgen rust --out-dir /tmp/test test.wit
  3. Observe the panic

    thread 'main' panicked at /home/runner/work/wit-bindgen/wit-bindgen/crates/core/src/abi.rs:1316:9
    assertion failed: sig.retptr
    note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
    

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