-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
Rollup of 13 pull requests #63119
Rollup of 13 pull requests #63119
Conversation
The `align_offset` method returns an `usize`, so using `add` makes more sense than using `offset`, which takes an `isize`.
They were resolved with modern hygiene, making this just a strange way to shadow lifetimes.
Declarations were already modernized, resulting in cases where a macro couldn't resolve it's own identifier.
Fixes rust-lang#52632 Existential types (soon to be 'impl trait' aliases) can either be delcared at a top-level crate/module scope, or within another item such as an fn. Previously, we were handling the second case incorrectly when recursively searching for defining usages - we would check children of the item, but not the item itself. This lead to us missing closures that consituted a defining use of the existential type, as their opaque type instantiations are stored in the TypeckTables of their parent function. This commit ensures that we explicitly visit the defining item itself, not just its children.
Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
I'm relatively certain that SWIG was only needed for LLDB which is no longer built, and I'm hoping we can remove the xz install to remove the reliance on `brew` for our build (which is another point of failure for flaky networks).
Add very simple edition check to tidy. Fixes rust-lang#58099.
…r=cramertj Properly check the defining scope of existential types Fixes rust-lang#52632 Existential types (soon to be 'impl trait' aliases) can either be delcared at a top-level crate/module scope, or within another item such as an fn. Previously, we were handling the second case incorrectly when recursively searching for defining usages - we would check children of the item, but not the item itself. This lead to us missing closures that consituted a defining use of the existential type, as their opaque type instantiations are stored in the TypeckTables of their parent function. This commit ensures that we explicitly visit the defining item itself, not just its children.
…=varkor Turn `INCOMPLETE_FEATURES` into lint We do this because it is annoying to see the warning when building rustc and because this is better from a "separation of concerns" POV. The drawback to this change is that this will respect `--cap-lints`. Also note that this is not a buffered lint so if there are fatal parser errors then the lint will not trigger. r? @varkor
… r=varkor Add tests for some `existential_type` ICEs Fix rust-lang#53678 Fix rust-lang#60407 Fix rust-lang#60564 rust-lang#54899 will need some minimization before it can be added. r? @varkor
vxworks: Remove Linux-specific comments. It looks like the VxWorks fork inadvertently left in some Linux-specific workaround comments in `libstd`, these can be removed. Came up when looking into rust-lang#62516 CC: @BaoshanPang
…troalbini ci: Skip installing SWIG/xz on OSX I'm relatively certain that SWIG was only needed for LLDB which is no longer built, and I'm hoping we can remove the xz install to remove the reliance on `brew` for our build (which is another point of failure for flaky networks).
…ievink Add links to None in Option doc r? @jonas-schievink
…t, r=sfackler std: Fix a failing `fs` test on Windows In testing 4-core machines on Azure the `realpath_works_tricky` test in the standard library is failing with "The directory name is invalid". In attempting to debug this test I was able to reproduce the failure locally on my machine, and after inspecing the test it I believe is exploiting Unix-specific behavior that seems to only sometimes work on Windows. Specifically the test basically executes: mkdir -p a/b mkdir -p a/d touch a/f ln -s a/b/c ../d/e ln -s a/d/e ../f and then asserts that `canonicalize("a/b/c")` and `canonicalize("a/d/e")` are equivalent to `a/f`. On Windows however the first symlink is a "directory symlink" and the second is a file symlink. In both cases, though, they're pointing to files. This means that for whatever reason locally and on the 4-core environment the call to `canonicalize` is failing. On Azure today it seems to be passing, and I'm not entirely sure why. I'm sort of presuming that there's some sort of internals going on here where there's some global Windows setting which makes symlinks behavior more unix-like and ignore the directory hint. In any case this should keep the test working and also fixes the test locally for me. It's also worth pointing out that this test was made Windows compatible in rust-lang#31360, a pretty ancient PR at this point.
@bors r+ p=200 rollup=never |
📌 Commit f9cf2d6 has been approved by |
⌛ Testing commit f9cf2d6 with merge 88e427742df802078805abe025df95637820e031... |
📌 Commit f9cf2d6 has been approved by |
⌛ Testing commit f9cf2d6 with merge b42ad412fcca94c1479abed0345633a90f416256... |
@bors p=200 |
Your PR failed (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem. Click to expand the log.
I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact |
The job Click to expand the log.
I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact |
💔 Test failed - checks-azure |
The job Click to expand the log.
I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact |
Successful merges:
offset_to
method fromalign_offset
docs #61965 (Remove mentions of removedoffset_to
method fromalign_offset
docs)for ( $pat in $expr ) $block
#62928 (Syntax: Recover onfor ( $pat in $expr ) $block
)#![feature(bind_by_move_pattern_guards)]
sound without#[feature(nll)]
#63059 (Make#![feature(bind_by_move_pattern_guards)]
sound without#[feature(nll)]
)INCOMPLETE_FEATURES
into lint #63095 (TurnINCOMPLETE_FEATURES
into lint)existential_type
ICEs #63096 (Add tests for someexistential_type
ICEs)fs
test on Windows #63109 (std: Fix a failingfs
test on Windows)Failed merges:
r? @ghost