Skip to content
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

proc_macro_path_invoc feature gate should allow path-like invocation of bang macros #50285

Closed
jcsoo opened this issue Apr 27, 2018 · 3 comments
Closed

Comments

@jcsoo
Copy link

jcsoo commented Apr 27, 2018

$ rustc --version
rustc 1.27.0-nightly (ac3c2288f 2018-04-18)

When #[feature(use_extern_macros)] is enabled, invoking bang macros using an explicit path triggers an error:

error[E0658]: paths of length greater than one in macro invocations are currently unstable
    --> /Users/jcsoo/bobbin-dev/bobbin-dev/mcu/bobbin-stm32/stm32f74x/src/irq.rs:1413:1
     |
1413 | ::bobbin_mcu::irq!(::dma::Dma2Stream7, IrqDma, Irq70);
     | ^^^^^^^^^^^^^^^^^
     |
     = help: add #![feature(proc_macro_path_invoc)] to the crate attributes to enable

Per discussion in #50120 (comment), this type of invocation should be allowed.

@alexcrichton
Copy link
Member

I believe this has been fixed

@mark-i-m
Copy link
Member

@alexcrichton Does this include things like #[derive($crate::serde_serialize::Serialize)]?

@petrochenkov
Copy link
Contributor

@mark-i-m
Multi-segment paths in attributes should still be gated with proc_macro_path_invoc, that includes derive.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants