| Age | Commit message (Collapse) | Author | Lines |
|
[stable] 1.40 stable release
r? @ghost
|
|
|
|
[beta] Beta backports
Backporting the following pull requests:
* resolve: Always resolve visibilities on impl items #67236
* resolve: Resolve visibilities on fields with non-builtin attributes #67106
* E0023: handle expected != tuple pattern type #67044
* Fix `unused_parens` triggers on macro by example code #66983
* Fix some issues with attributes on unnamed fields #66669
* Ensure that we get a hard error on generic ZST constants if their bodies #67134 (via #67297)
Some of these conflicted on merge, I resolved where possible, sometimes by cherry-picking a commit or two more from the relevant PRs. Since those changes are necessary though for backport to proceed (otherwise not even std/core compile), seems fine -- they're fairly minor cleanups anyway.
|
|
|
|
To avoid potential duplicate diagnostics and separate the error reporting logic
|
|
|
|
|
|
|
|
causes an error during evaluation
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[beta] backports
This pull request backports the following pull requests, which have all been beta-accepted by the
compiler team.
* Handle non_exhaustive in borrow checking #66722
* Do not ICE on trait aliases with missing obligations #66392
* Do not ICE in `if` without `else` in `async fn` #66391
* Fix ICE when trying to suggest `Type<>` instead of `Type()` #66390
* Do not ICE on recovery from unmet associated type bound obligation #66388
* find_deprecation: deprecation attr may be ill-formed meta. #66381
* parser: don't use `unreachable!()` in `fn unexpected`. #66361
* Undo an assert causing an ICE until we fix the underlying problem #66250
* Do not ICE with a precision flag in formatting str and no format arguments #66093
* Fix two OOM issues related to `ConstProp` #66394
|
|
|
|
Fix spurious CI filures due to OOM
Fixes #66397
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
review comment
|
|
|
|
|
|
|
|
[beta] Update cargo
1 commits in 5da4b4d47963868d9878480197581ccbbdaece74..bc8e4c8be13c8f8d1583f9d52e55fda038c0f9d4
2019-10-28 21:53:41 +0000 to 2019-11-22 17:45:44 +0000
- [beta] Extend documentation on security concerns of crate names in a registry. (rust-lang/cargo#7619)
|
|
[beta] Update mdbook
This is a backport of #66338. There were some significant rendering regressions, particularly in example code, in the version on the beta branch.
This change drops mdbook-linkcheck rather than updating it. The new version brought in a number of new crates and changes that I wasn't comfortable pulling into beta. The linkcheck is only used for the rustc-guide which is not published from this repo.
Detailed notes are at https://github.com/rust-lang/mdBook/blob/master/CHANGELOG.md
|
|
|
|
|
|
[beta] Download 1.39.0 from static
This PR comments out `dev: 1` from the beta channel's `stage0.txt`.
r? @Mark-Simulacrum
|
|
|
|
Prepare beta 1.40.0
cc @Mark-Simulacrum
|
|
It's super unclear why this broke when we switched to beta but not
previously -- but at least it's hopefully fixed now.
|
|
|
|
Statically link libstdc++ on windows-gnu
Fixes https://github.com/rust-lang/rust/issues/61561 by not shipping `libstdc++-6.dll` which can conflict with the GCC.
|
|
Clarify pattern-matching usefulness algorithm
This PR clarifies a bit the usefulness algorithm by emphasizing that each row of the matrix can be seen as a sort of stack from which we pop constructors. It also moves code around to increase separation of concerns.
This is part of my splitting of https://github.com/rust-lang/rust/pull/65160 into smaller PRs.
|
|
expand: Feature gate out-of-line modules in proc macro input
Extracted from https://github.com/rust-lang/rust/pull/64273.
We are currently gating attributes applied directly to `mod` items because there are unresolved questions about out-of-line modules and their behavior is very likely to change.
However, you can sneak an out-of-line module into an attribute macro input using modules nested into other items like
```rust
#[my_attr]
fn m() {
#[path = "zzz.rs"]
mod n; // what tokens does the `my_attr` macro see?
}
```
This PR prevents that and emits a feature gate error for this case as well.
r? @Centril
It would be great to land this before beta.
|
|
|
|
Remove LintBuffer from Session
This moves the `LintBuffer` from `Session` into the `Resolver`, where it is used until lowering is done and then consumed by early lint passes. This also happily removes the failure mode of buffering lints too late where it would have previously lead to ICEs; it is statically no longer possible to do so.
I suspect that with a bit more work a similar move could be done for the lint buffer inside `ParseSess`, but this PR doesn't touch it (in part to keep itself small).
The last commit is the "interesting" commit -- the ones before it don't work (though they compile) as they sort of prepare the various crates for the lint buffer to be passed in rather than accessed through Session.
|
|
Updated RELEASES.md for 1.39.0
### [Rendered](https://github.com/XAMPPRocky/rust/blob/relnotes-1.39.0/RELEASES.md)
r? @Mark-Simulacrum
cc @rust-lang/release
|
|
|
|
This allows us to directly pass in a lint buffer
|
|
|
|
|