diff options
| author | Mark Rousskov <mark.simulacrum@gmail.com> | 2018-07-11 12:38:33 -0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-07-11 12:38:33 -0600 |
| commit | 322632ac108aa08c41a23e804a856f383d1b705f (patch) | |
| tree | fa88ca4f8ded2c6bd2422ff8cd9f1f94228c41d5 /src/rustllvm/RustWrapper.cpp | |
| parent | d2a8a2b34a26b73dfd9e0179d67cff7c8f8ef07d (diff) | |
| parent | fc74e359819002fad402f68728f6e5ba2d4cb704 (diff) | |
| download | rust-322632ac108aa08c41a23e804a856f383d1b705f.tar.gz rust-322632ac108aa08c41a23e804a856f383d1b705f.zip | |
Rollup merge of #51952 - petrochenkov:transmark, r=alexcrichton
hygiene: Decouple transparencies from expansion IDs
And remove fallback to parent modules during resolution of names in scope.
This is a breaking change for users of unstable macros 2.0 (both procedural and declarative), code like this:
```rust
#![feature(decl_macro)]
macro m($S: ident) {
struct $S;
mod m {
type A = $S;
}
}
fn main() {
m!(S);
}
```
or equivalent
```rust
#![feature(decl_macro)]
macro m($S: ident) {
mod m {
type A = $S;
}
}
fn main() {
struct S;
m!(S);
}
```
stops working due to module boundaries being properly enforced.
For proc macro derives this is still reported as a compatibility warning to give `actix_derive`, `diesel_derives` and `palette_derive` time to fix their issues.
Fixes https://github.com/rust-lang/rust/issues/50504 in accordance with [this comment](https://github.com/rust-lang/rust/issues/50504#issuecomment-399764767).
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
0 files changed, 0 insertions, 0 deletions
