-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
gfx_device_gl 0.16.1 broken on latest nightly #63687
Comments
This regression affects another project I am working on as well. is there any status on this? |
I'm not sure what the details of #63613 were, but this feels like a bug to me -- in particular it feels like the behavior here is less hygienic, not more? @petrochenkov perhaps you can clarify your view on the situation, that'd be great. |
Well, it's more hygienic than before because previously What |
I see -- just not necessarily the core that was in scope at the point of definition.
Seems right. Is there a tracking issue to cc or something? |
That said, the constructions extern crate some_crate as core;
extern crate some_crate as std; or (same, but from command line) --extern core=/path/to/some_crate
--extern std=/path/to/some_crate really require some responsibility since they effectively override If you override them you should be able to provide all the necessary services expected from |
This is supposed to be the tracking issue for the regression? |
While most of the changes in @petrochenkov 's PR have increased hygiene, the specific change linked by @bjorn3 didn't do any increase (or decrease) as both times the macro is being resolved in an unhygienic way. From a pragmatic point of view, lots of people seem to shadow the core crate but few people want to (saying "want to" and not "do" because of selection bias) shadow the IMO the specific change should be reverted.
There is a pattern to use std or any other third party crate in a hygienic way. You define a |
Fixed in #64060. |
check-in from compiler triage: marking as p-high, but @petrochenkov has a pending fix already 🎉 |
Improve hygiene of `alloc::format!` `format` now uses `format_args` though a `__export` module, as described in rust-lang#63687 (comment). Fixes rust-lang#63687
Improve hygiene of `alloc::format!` `format` now uses `format_args` though a `__export` module, as described in rust-lang#63687 (comment). Fixes rust-lang#63687
Caused by #63613. To be precise the https://github.com/rust-lang/rust/pull/63613/files#diff-c915449964a130718bd732c4f035b2cfR101 change.
It basically does:
Because
format!
uses::core::format_args
to refer toformat_args!
, it will try to resolve it ingfx_core
, which doen't containformat_args!
.The text was updated successfully, but these errors were encountered: