-
Notifications
You must be signed in to change notification settings - Fork 745
[WIP] Template instantiation layout test name mangling #620
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] Template instantiation layout test name mangling #620
Conversation
This commit defines a new set of assertion macros that are only checked in testing/CI when the `testing_only_extra_assertions` feature is enabled. This makes it so that *users* of bindgen that happen to be making a debug build don't enable all these extra and expensive assertions. Additionally, this removes the `testing_only_assert_no_dangling_items` feature, and runs the assertions that were previously gated on that feature when the new `testing_only_extra_assertions` feature is enabled.
This replaces various `unwrap` calls with `expect` calls that have better diagnostic messages if/when they fail.
☔ The latest upstream changes (presumably #621) made this pull request unmergeable. Please resolve the merge conflicts. |
I suspect the "completely instantiated template" check may not work as greatly for non-functions? |
Can we give this a higher priority? It is pretty painful to land patches when you push the numbers a bit via including a new file... |
I don't personally have the cycles to work on this. Feel free to take over. |
This should be good enough, following the pattern of anonymous items, and should prevent most of the current noise in stylo updates. Closes rust-lang#620 Fixes rust-lang#619
I put some other approach to this in #708 |
This should be good enough, following the pattern of anonymous items, and should prevent most of the current noise in stylo updates. Closes rust-lang#620 Fixes rust-lang#619
work in progress fix for #619
It seems we aren't ever getting the mangled name out of libclang for template instantiations in practice, so we're hitting the fallback behavior (master's current behavior) 100% of the time :-/
Someone feel free to steal this from me, I'm not planning on investigating further in the near future.