You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix an accidental raw access of field
The manifest has a few different ways of specifying whether a crate is a
procedural macro, and there's a `TomlTarget::proc_macro()` method to
unify these various lines. Unfortunately though we had a bug where one
location forgot to call the method and read the raw field! This led to
surprising behavior where the different ways to specify a proc macro
would have subtly different changes in behavior. The fix here in this PR
is to ensure that we access the property always via the method.
Closes#8315
Problem
A proc-macro is usually specified as:
but can also be specified as
The first one appears to be fine, but the second one appears to cause some strange issues with the v2 resolver.
Steps
Test workspace is here.
You'll see one line:
Now edit
internal-macro/Cargo.toml
and changeproc-macro = true
toproc_macro = true
.Afterwards:
Possible Solution(s)
I guess you could either treat both the same or warn/error on specifying it as
proc_macro
.Notes
Output of
cargo version
:cc @ehuss again I guess!
The text was updated successfully, but these errors were encountered: