| Age | Commit message (Collapse) | Author | Lines |
|
Fix most remaining Polonius test differences
This fixes most of the Polonius test differences and also avoids overflow in issue-38591.rs.
r? @nikomatsakis
|
|
|
|
|
|
typo: fix typo in E0392
See #64931.
---
Cc: @Centril @estebank
|
|
Make visit projection iterative
r? @oli-obk
/cc @nikomatsakis
|
|
r=petrochenkov
Add long error explanation for E0556
Part of #61137
|
|
Set RUST_BACKTRACE=0 in tests that include a backtrace in stderr
This removes the implicit dependency on the environment variables set
when running `./x.py test`
|
|
Replace mentions of IRC with Discord
Revival of #61531
closes #61524
what was the outcome of this? https://github.com/rust-lang/rust/pull/61531#issuecomment-500452638
should this be changed in this PR as well? https://github.com/rust-lang/rust/pull/61531#issuecomment-501473787
|
|
pnkfelix:fix-issue-61631-self-in-type-param-default, r=alexreg
Disallow Self in type param defaults of ADTs
Fix #61631
(also includes a drive-by fix to a typo in some related diagnostic output.)
|
|
r=QuietMisdreavus
Prevent rustdoc feature doctests
Part of https://github.com/rust-lang/rust/pull/61351
cc @ollie27
|
|
add regression test for #60218
Fixes #60218
|
|
proc_macro API: Expose `macro_rules` hygiene
Proc macros do not have direct access to our oldest and most stable hygiene kind - `macro_rules` hygiene.
To emulate it macro authors have to go through two steps - first generate a temporary `macro_rules` item (using a derive, at least until https://github.com/rust-lang/rust/pull/64035 is merged), then generate a macro call to that item. Popular crates like [proc_macro_hack](https://crates.io/crates/proc-macro-hack) use this trick to generate hygienic identifiers from proc macros.
I'd say that these workarounds with nested macro definitions have more chances to hit some corner cases in our hygiene system, in which we don't have full confidence.
So, let's provide a direct access to `macro_rules` hygiene instead.
This PR does that by adding a new method `Span::mixed_site` (bikeshedding is welcome) in addition to existing `Span::call_site` (stable) and `Span::def_site` (unstable).
Identifiers with this span resolve at def-site in for local variables, labels and `$crate`, and resolve at call-site for everything else, i.e. exactly like identifiers produced by `macro_rules`.
This API addition opens the way to stabilizing proc macros in expression positions (https://github.com/rust-lang/rust/issues/54727), for which use of call-site hygiene or workarounds with temporary items would be quite unfortunate.
(`macro_rules` expanded in expression position, on the other hand, are stable since 1.0 and widely used.)
r? @dtolnay @alexcrichton
|
|
Deprecate `#![plugin]` & `#[plugin_registrar]`
This PR deprecates `#![plugin]` and `#[plugin_registrar]`.
~A removal deadline is set: 1.44.0. This will be in 9 months from now and should give everyone who is still relying on the feature ample time to rid themselves of this dependency.~
cc https://github.com/rust-lang/rust/issues/29597
r? @Mark-Simulacrum
|
|
Stabilize todo macro
The `todo!` macro is just another name for `unimplemented!`.
Tracking issue: https://github.com/rust-lang/rust/issues/59277
This PR needs a FCP to merge.
r? @withoutboats
|
|
|
|
|
|
It duplicates `CrateRoot::name`
|
|
It was only used for retreiving edition, which was a bug.
In case of dual proc macros the edition should be taken from the target crate version, like any other metadata.
|
|
|
|
It's a crate name after renaming, so it's entirely irrelevant to crate loading
|
|
It's entirely irrelevant to crate loading
|
|
It's entirely irrelevant to crate loading
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Update: incorporate review feedback.
|
|
Avoid ICE on ReFree region on where clause
Fix #64855.
|
|
|
|
See #64931.
|
|
r=cramertj
extract expected return type for async fn generators
Fixes #60424
cc @Centril, I know you've been eager to see this fixed.
r? @cramertj
|
|
|
|
|
|
(Without this commit, you still get an error (a very similar one, at
that), but it complains about use of forward declaration, which is
confusing since people do not necessarily think of `Self` as being
declared at all.)
Update: incorporate review feedback.
|
|
Update: review feedback
Update: placate tidy
|
|
|
|
|
|
placate tidy
|
|
Some comment refinements inspired by review feedback.
|
|
Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
Co-Authored-By: Ralf Jung <post@ralfj.de>
|
|
|
|
|
|
It was unclear what the implementation does when it encounters existing keys. This change makes it clear by documenting the trait impl.
|
|
|
|
To make `new` method appear first in documentation.
|
|
Update llvm-project submodule
Bring in rust-lang/llvm-project#24 which brings in some wasm
improvements related to the bulk-memory proposal
|