rust-lang / rust-lang/rust-bindgen

bindgen needs a way to block a type alias without blocking things that depend on it

Open
#1,576 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Rust
Stars
5.3k
Forks
829
Avg merge
1d 1h
Merged PRs (30d)
15

Description

So there's SDL2, and on linux it has some X11 support, and one of those types is Window.

Window is a super common word, one which I want to use in the higher level library in fact, and so really I'd like a way to not have it be in the library when you do a glob import (because there's a gazillion items, so you want the ability to glob import). However, if I blacklist the type things that depend on it have errors.

Since it's only a type alias, not a whole struct and all, can there be a way to have it removed from the output and then have the type that it's standing in for be used everywhere it would have been used?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files, tests, or entry points. Start by locating bindgen's handling of C type aliases and the dependency logic used when aliases are blacklisted. Define done as suppressing the alias while preserving valid uses of the underlying type, with coverage for dependent declarations and glob-import output.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.