| Age | Commit message (Collapse) | Author | Lines |
|
MVP for using rust-lld as part of cc
Will fix #71519. I need to figure out how to write a test showing that lld is used instead of whatever linker cc normally uses. When I manually run rustc using `echo 'fn main() {}' | RUSTC_LOG=rustc_codegen_ssa::back::link=debug ./rustc -Clinker-flavor=gcc-lld --crate-type bin -Clink-arg=-Wl,-v` (thanks to bjorn3 on Zulip), I can see that lld is used, but I'm not sure how to inspect that output in a test.
|
|
Allow qualified paths in struct construction (both expressions and patterns)
Fixes #79658
|
|
Add the x86_64-gnu-stable builder
During the 1.52 release process we had to deal with some commits that passed the test suite on the nightly branch but failed on the beta or stable branch. In that case it was due to some UI tests including the channel name in the output, but other changes might also be dependent on the channel.
This commit adds a new CI job that runs the Linux x86_64 test suite with the stable branch, ensuring nightly changes also work as stable. To ensure the new job works the following other changes are present:
* The `ui-fulldeps/session-derive-errors.rs` test has been disabled on beta and stable, which required adding support for `// ignore-{channel}` and `// only-{channel}`.
* The `rustdoc/intra-doc/field.rs` has been fixed.
r? `@Mark-Simulacrum`
fixes https://github.com/rust-lang/release-team/issues/11
|
|
Don't pass -Z unstable-options by default for UI tests
Unconditionally passing -Z unstable-options makes it impossible to test whether an option requires unstable-options or not.
This uncovered quite a lot of bugs, I'll open issues for each. These don't strictly need to be fixed before this is merged, it just makes the diff much larger because of the changes to diagnostics.
- https://github.com/rust-lang/rust/issues/82636
- https://github.com/rust-lang/rust/issues/82637
- https://github.com/rust-lang/rust/issues/82638
|
|
position.
|
|
ignore test if rust-lld not found
create ld -> rust-lld symlink at build time instead of run time
for testing in ci
copy instead of symlinking
remove linux check
test for linker, suggestions from bjorn3
fix overly restrictive lld matcher
use -Zgcc-ld flag instead of -Clinker-flavor
refactor code adding lld to gcc path
revert ci changes
suggestions from petrochenkov
rename gcc_ld to gcc-ld in dirs
|
|
update Miri
We had some nice PRs land today, let's ship those. :)
Cc `@rust-lang/miri` r? `@ghost`
|
|
rustdoc: Print a warning if the diff when comparing to old nightlies is empty
This avoids confusing situations where it's unclear whether there's a
bug in the diff tool or not:
```
26: `@has` check failed
`XPATH PATTERN` did not match
// `@has` - '//code/a[`@href="{{channel}}/std/primitive.i32.html"]'` 'i32'
Encountered 6 errors
------------------------------------------
info: generating a diff against nightly rustdoc
failures:
[rustdoc] rustdoc/primitive-reexport.rs
```
|
|
|
|
Make copy/copy_nonoverlapping fn's again
Make copy/copy_nonoverlapping fn's again, rather than intrinsics.
This a short-term change to address issue #84297.
It effectively reverts PRs #81167 #81238 (and part of #82967), #83091, and parts of #79684.
|
|
|
|
|
|
Rollup of 11 pull requests
Successful merges:
- #85906 (Use `Iterator::find` instead of open-coding it)
- #85951 (Update the documentation of `-C force-unwind-tables` for #83482)
- #85985 (Clarify documentation of slice sorting methods)
- #85989 (Remove rustfmt tests from top-level .gitattributes)
- #86074 (Default panic message should print Box<dyn Any>)
- #86078 (Type page font weight)
- #86090 (:arrow_up: rust-analyzer)
- #86095 (Search description codeblock)
- #86096 (Comment out unused error codes and add description for E0316)
- #86101 (Correct type signature in doc for Bound::as_mut)
- #86103 (Remove lifetime hack)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
This bumps racer to 2.1.48, which bumps rustc-ap-* crates to v722 in
order to unbreak the toolstate.
|
|
The session-derive-errors test ensures the internal SessionDiagnostic
derive macro outputs the right error messages when misused.
The macro relies on the proc_macro2 crate though, which changes its span
behavior depending on whether the channel is nightly or not. This caused
test failures when bumping the channel from nightly to beta/stable.
Since SessionDiagnostic is internal-only we don't care about its
diagnostics quality outside of nightly, as the compiler itself is
developed on nightly. Thus the easiest solution is to ignore that test
on the beta and stable channels.
This also implements `// only-{channel}` and `// ignore-{channel}` in
compiletest to properly support the change.
|
|
|
|
Show test type during prints
Test output can sometimes be confusing. For example doctest with the no_run argument are displayed the same way than test that are run.
During #83857 I got the feedback that test output can be confusing.
For the moment test output is
```
test $DIR/test-type.rs - f (line 12) ... ignored
test $DIR/test-type.rs - f (line 15) ... ok
test $DIR/test-type.rs - f (line 21) ... ok
test $DIR/test-type.rs - f (line 6) ... ok
```
I propose to change output by indicating the test type as
```
test $DIR/test-type.rs - f (line 12) ... ignored
test $DIR/test-type.rs - f (line 15) - compile ... ok
test $DIR/test-type.rs - f (line 21) - compile fail ... ok
test $DIR/test-type.rs - f (line 6) ... ok
```
by indicating the test type after the test name (and in the case of doctest after the function name and line) and before the "...".
------------
Note: this is a proof of concept, the implementation is probably not optimal as the properties added in `TestDesc` are only use in the display and does not represent actual change of behavior, maybe `TestType::DocTest` could have fields
|
|
- Pass it explicitly where appropriate
- Update stderr files and warnings; it turns that unstable-options has
far-reaching effects on diagnostics.
|
|
BPF target support
This adds `bpfel-unknown-none` and `bpfeb-unknown-none`, two new no_std targets that generate little and big endian BPF. The approach taken is very similar to the cuda target, where `TargetOptions::obj_is_bitcode` is enabled and code generation is done by the linker.
I added the targets to `dist-various-2`. There are [some tests](https://github.com/alessandrod/bpf-linker/tree/main/tests/assembly) in bpf-linker and I'm planning to add more. Those are currently not ran as part of rust CI.
|
|
|
|
This avoids confusing situations where it's unclear whether there's a
bug in the diff tool or not:
```
26: @has check failed
`XPATH PATTERN` did not match
// @has - '//code/a[@href="{{channel}}/std/primitive.i32.html"]' 'i32'
Encountered 6 errors
------------------------------------------
info: generating a diff against nightly rustdoc
failures:
[rustdoc] rustdoc/primitive-reexport.rs
```
|
|
|
|
Rollup of 8 pull requests
Successful merges:
- #85717 (Document `From` impls for cow.rs)
- #85850 (Remove unused feature gates)
- #85888 (Fix typo in internal documentation for `TrustedRandomAccess`)
- #85889 (Restoring the `num_def_ids` function in the CStore API )
- #85899 (jsondocck small cleanup)
- #85937 (Fix bad suggestions for code from proc_macro)
- #85963 (Show `::{{constructor}}` in std::any::type_name().)
- #85977 (Fix linkcheck script from getting out of sync.)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
Fix linkcheck script from getting out of sync.
When there are changes to the linkcheck script, the CI jobs used in the books would download the latest version on master, but run it against nightly. During that 24 hour window, the CI can fail if the script has changes that are incompatible with the last nightly. This fixes it so that it downloads the linkchecker that matches the version of nightly.
This also includes a fix to build with release to make it run much faster (I forgot to add this in #85652).
|
|
jsondocck small cleanup
updated `shlex` (there was some fix https://github.com/comex/rust-shlex/commit/6db4704fcad8393dd6947b1d31720327546a84a2)
replaced `lazy_static` with `once_cell`
removed `serde` direct dependency (`serde_json` will pull it)
|
|
Update Clippy
Bi-weekly Clippy update.
r? `@Manishearth`
|
|
|
|
|
|
Update Miri
Fixes #85946.
r? `@RalfJung`
|
|
|
|
|
|
Update cargo
10 commits in e931e4796b61de593aa1097649445e535c9c7ee0..0cecbd67323ca14a7eb6505900d0d7307b00355b
2021-05-24 16:17:27 +0000 to 2021-06-01 20:09:13 +0000
- Configure hosts separately from targets when --target is specified. (rust-lang/cargo#9322)
- Add some validation to rustc-link-arg (rust-lang/cargo#9523)
- Implement suggestions for unknown features in workspace (rust-lang/cargo#9420)
- Extract common `make_dep_path` to cargo_util (rust-lang/cargo#9529)
- Add a note about rustflags compatibility. (rust-lang/cargo#9524)
- Consolidate doc collision detection. (rust-lang/cargo#9526)
- Add `--depth` option for `cargo-tree` (rust-lang/cargo#9499)
- `cargo tree -e no-proc-macro` to hide procedural macro dependencies (rust-lang/cargo#9488)
- Update to semver 1.0.0 (rust-lang/cargo#9508)
- Update tar dependency to 0.4.35 (rust-lang/cargo#9517)
|
|
Sidebar unification
This PR does a few things:
* Put crates list at all levels (before, it was only on the "top" items)
* Fix bug in module sidebar: the list of items was from the parent module.
The other changes (on bootstrap mostly) were to allow to generate multiple crates in a same folder so that we can ensure that clicking on the crates in the sidebar works as expected.
I added a rustdoc-gui test to ensure everything is where it should be.
r? `@jyn514`
|
|
|
|
|
|
|
|
|
|
:arrow_up: rust-analyzer
|
|
r? @RalfJung
|
|
|
|
rustdoc-gui tool
|
|
Add documentation for aarch64-apple-ios-sim target
Documentation as requested for [MCP 428](https://github.com/rust-lang/compiler-team/issues/428) to promote this target to Tier 2.
Currently it calls out that it's Tier 3. That should be changed if this target is promoted, but this PR could also land before that.
Note: probably should get signoff from the compiler team based on that MCP.
|
|
r=Mark-Simulacrum
Error code checker improvement
Just realized that some error codes shouldn't be ignored anymore. So I updated the script to ensure that if an error code is tested and ignored, it will trigger an error.
|
|
|
|
|
|
Update Miri
Fixes #85780.
|
|
|
|
Make closures inherit their parent's "safety context"
Fixes rust-lang/project-thir-unsafeck#9, ~~blocked on #85273~~.
r? `@nikomatsakis`
|
|
|
|
|