about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2020-10-15Auto merge of #77948 - cuviper:rust-llvm11, r=nikicbors-0/+0
Rebase LLVM onto 11.0.0 final
2020-10-15Auto merge of #77873 - sexxi-goose:use_tuple_inference_for_closures, ↵bors-15/+15
r=nikomatsakis Replace tuple of infer vars for upvar_tys with single infer var This commit allows us to decide the number of captures required after completing capture ananysis, which is required as part of implementing RFC-2229. closes https://github.com/rust-lang/project-rfc-2229/issues/4 r? `@nikomatsakis`
2020-10-15Auto merge of #77756 - alarsyo:setup-llvm-detect, r=jyn514bors-4/+32
Detect configuration for LLVM during setup This is a first draft to address #77579, setting `download-ci-llvm` to true on Linux, but I could also implement the `if-available` setting mentioned in the issue. On other platforms I was thinking about using [the which crate](https://crates.io/crates/which), if adding a dependency on it is considered okay of course, to detect the presence of `llvm-config` in the path, and use it if found. Still a work in progress of course.
2020-10-15Rollup merge of #77951 - ehuss:update-books, r=ehussYuki Okushi-0/+0
Update books ## reference 5 commits in 56a13c082ee90736c08d6abdcd90462517b703d3..1b78182e71709169dc0f1c3acdc4541b6860e1c4 2020-09-14 23:20:16 -0700 to 2020-10-11 13:53:47 -0700 - Specify that SSE4.1 includes SSSE3 instead of SSE3 (rust-lang-nursery/reference#892) - Fix mutable expressions that can be dereferenced (rust-lang-nursery/reference#890) - Fix grammar in memory model (rust-lang-nursery/reference#889) - Add style checks. (rust-lang-nursery/reference#886) - Add description for LUB Coercion (rust-lang-nursery/reference#808) ## book 1 commits in cb28dee95e5e50b793e6ba9291c5d1568d3ad72e..451a1e30f2dd137aa04e142414eafb8d05f87f84 2020-09-09 10:06:00 -0500 to 2020-10-05 09:11:18 -0500 - clarify description of when ? can be used (rust-lang/book#2471) ## rust-by-example 1 commits in 7d3ff1c12db08a847a57a054be4a7951ce532d2d..152475937a8d8a1f508d8eeb57db79139bc803d9 2020-09-28 15:54:25 -0300 to 2020-10-09 09:29:50 -0300 - Add 1.45.0 cast documentation (rust-lang/rust-by-example#1384) ## embedded-book 2 commits in dd310616308e01f6cf227f46347b744aa56b77d9..79ab7776929c66db83203397958fa7037d5d9a30 2020-09-26 08:54:08 +0000 to 2020-10-12 08:00:05 +0000 - llvm-objdump: Use two hyphens in flags to objdump (rust-embedded/book#270) - Start/hardware: clarify which file needs tweaking (rust-embedded/book#266)
2020-10-15Rollup merge of #77934 - XAMPPRocky:codegen-backend-docs, r=jonas-schievinkYuki Okushi-0/+31
Document -Z codegen-backend in the unstable book ### [Rendered](https://github.com/XAMPPRocky/rust/blob/codegen-backend-docs/src/doc/unstable-book/src/compiler-flags/codegen-backend.md) Companion PR to #77933 tracking issue. cc @bjorn3
2020-10-15Rollup merge of #77902 - arlosi:arm64manifest, r=ehussYuki Okushi-0/+1
Include aarch64-pc-windows-msvc in the dist manifests r? @ehuss /cc @pietroalbini @Mark-Simulacrum #72881
2020-10-15Rollup merge of #77879 - ijackson:x-py, r=jyn514Yuki Okushi-21/+66
Provide better documentation and help messages for x.py setup Closes: #77861 I have split this up into tiny comments because I find it clearer this way. Feel free to squash it.
2020-10-15Rollup merge of #77753 - GuillaumeGomez:check-html-comments, r=jyn514Yuki Okushi-54/+110
Check html comments Part of #67799. cc @ollie27 r? @jyn514
2020-10-15Rollup merge of #77570 - GuillaumeGomez:whitespace-doc-alias, r=jyn514,ollie27Yuki Okushi-16/+53
Allow ascii whitespace char for doc aliases Fixes issue from https://github.com/rust-lang/rust/issues/76705#issuecomment-703123847 cc @lopopolo @ollie27 r? @jyn514
2020-10-14Update booksEric Huss-0/+0
2020-10-14Rebase LLVM onto 11.0.0 finalJosh Stone-0/+0
2020-10-14Update Xcode beta version to allow aarch64-apple-darwin to compile againJake Goulding-1/+1
2020-10-14Update codegen-backend.mdXAMPPRocky-0/+3
2020-10-14Update codegen-backend.mdXAMPPRocky-2/+2
2020-10-14Update src/doc/unstable-book/src/compiler-flags/codegen-backend.mdXAMPPRocky-1/+1
2020-10-14Document -Z codegen-backend in the unstable bookErin Power-0/+28
2020-10-14x.py setup: Avoid infinite loop if stdin is /dev/nullIan Jackson-0/+4
EOF is not an error; it just causes read_line to produce "". Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2020-10-14x.py setup: Fix handling of wrong interactive inputIan Jackson-1/+1
We need a fresh input buffer each time, or we reuse the previous data (since `read_line` appends). Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2020-10-14x.py: setup: Offer keywords in interactive promptIan Jackson-2/+2
We understand these profile names because we use .to_str(). Mention them in the question. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2020-10-14x.py: setup: Provide a description of what it doesIan Jackson-3/+10
Co-authored-by: Joshua Nelson <joshua@yottadb.com>
2020-10-14x.py: setup: Refactor to centralise list of profilesIan Jackson-17/+51
Put all()'s otuput in the order we want to print things in, and add a comment about why they are in this order. Provide purpose() and all_for_help(). Use these things everywhere. Move all the abbrev character ("a", "b", etc.) processing into interactive_path. No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2020-10-14Handle multi-line HTML commentsGuillaume Gomez-26/+28
2020-10-14Auto merge of #77741 - JohnTitor:add-tests, r=matthewjasperbors-0/+225
Add some regression tests They're fixed since nightly-2020-10-07: Closes #52843 Closes #53448 Closes #54108 Closes #65581 Closes #65934 Closes #70292 Closes #71443
2020-10-14Auto merge of #77926 - Dylan-DPC:rollup-wttr8a1, r=Dylan-DPCbors-324/+311
Rollup of 8 pull requests Successful merges: - #77765 (Add LLVM flags to limit DWARF version to 2 on BSD) - #77788 (BTreeMap: fix gdb provider on BTreeMap with ZST keys or values) - #77795 (Codegen backend interface refactor) - #77808 (Moved the main `impl` for FnCtxt to its own file.) - #77817 (Switch rustdoc from `clean::Stability` to `rustc_attr::Stability`) - #77829 (bootstrap: only use compiler-builtins-c if they exist) - #77870 (Use intra-doc links for links to module-level docs) - #77897 (Move `Strip` into a separate rustdoc pass) Failed merges: - #77879 (Provide better documentation and help messages for x.py setup) - #77902 (Include aarch64-pc-windows-msvc in the dist manifests) r? `@ghost`
2020-10-13Include aarch64-pc-windows-msvc in the dist manifestsArlo Siemsen-0/+1
2020-10-14Rollup merge of #77897 - GuillaumeGomez:cleanup-passes-mod, r=jyn514Dylan DPC-170/+176
Move `Strip` into a separate rustdoc pass Just something which was bothering me lately. :) r? @jyn514
2020-10-14Rollup merge of #77829 - gburgessiv:unused-features-var, r=alexcrichtonDylan DPC-5/+5
bootstrap: only use compiler-builtins-c if they exist The assignment of `features` above was added in rust-lang#60981, but never used. Presumably the intent was to replace the string literal here with it. While I'm in the area, `compiler_builtins_c_feature` doesn't need to be a `String`. I'm not entirely sure of a great way to locally test this -- `./x.py test` passed on my machine, but 🤷‍♂️. r? @alexcrichton
2020-10-14Rollup merge of #77817 - jyn514:const-since, r=petrochenkovDylan DPC-81/+61
Switch rustdoc from `clean::Stability` to `rustc_attr::Stability` This gives greater type safety and is less work to maintain on the rustdoc end. It also makes rustdoc more consistent with rustc. Noticed this while working on https://github.com/rust-lang/rust/issues/76998. - Remove `clean::Stability` in favor of `rustc_attr::Stability` - Remove `impl Clean for Stability`; it's no longer necessary r? @GuillaumeGomez cc @petrochenkov
2020-10-14Rollup merge of #77795 - bjorn3:codegen_backend_interface_refactor, r=oli-obkDylan DPC-32/+26
Codegen backend interface refactor This moves several things away from the codegen backend to rustc_interface. There are a few behavioral changes where previously the incremental cache (incorrectly) wouldn't get finalized, but now it does. See the individual commit messages.
2020-10-14Rollup merge of #77788 - ssomers:btree_cleanup_gdb, r=Mark-SimulacrumDylan DPC-36/+43
BTreeMap: fix gdb provider on BTreeMap with ZST keys or values Avoid error when gdb is asked to inspect a BTreeMap or BTreeSet with a zero-sized type as key or value. And clean up. r? @Mark-Simulacrum
2020-10-14Auto merge of #77135 - Aaron1011:pretty-ignore-paren, r=petrochenkovbors-0/+220
Refactor AST pretty-printing to allow skipping insertion of extra parens Fixes #75734 Makes progress towards #43081 Unblocks PR #76130 When pretty-printing an AST node, we may insert additional parenthesis to ensure that precedence is properly preserved in code we output. However, the proc macro implementation relies on comparing a pretty-printed AST node to the captured `TokenStream`. Inserting extra parenthesis changes the structure of the reparsed `TokenStream`, making the comparison fail. This PR refactors the AST pretty-printing code to allow skipping the insertion of additional parenthesis. Several freestanding methods are moved to trait methods on `PrintState`, which keep track of an internal `insert_extra_parens` flag. This flag is normally `true`, but we expose a public method which allows pretty-printing a nonterminal with `insert_extra_parens = false`. To avoid changing the public interface of `rustc_ast_pretty`, the freestanding `_to_string` methods are changed to delegate to a newly-crated `State`. The main pretty-printing code is moved to a new `state` module to ensure that it does not accidentally call any of these public helper functions (instead, the internal functions with the same name should be used).
2020-10-13Auto merge of #77917 - JohnTitor:rollup-e47h2qt, r=JohnTitorbors-188/+205
Rollup of 14 pull requests Successful merges: - #77239 (Enable building Cargo for aarch64-apple-darwin) - #77569 (BTreeMap: type-specific variants of node_as_mut and cast_unchecked) - #77719 (Remove unnecessary rustc_const_stable attributes.) - #77722 (Remove unsafety from sys/unsupported and add deny(unsafe_op_in_unsafe_fn).) - #77725 (Add regression issue template) - #77776 ( Give an error when running `x.py test --stage 0 src/test/ui`) - #77786 (Mention rustdoc in `x.py setup`) - #77825 (`min_const_generics` diagnostics improvements) - #77868 (Include `llvm-dis`, `llc` and `opt` in `llvm-tools-preview` component) - #77884 (Use Option::unwrap_or instead of open-coding it) - #77886 (Replace trivial bool matches with the `matches!` macro) - #77892 (Replace absolute paths with relative ones) - #77895 (Include aarch64-apple-darwin in the dist manifests) - #77909 (bootstrap: set correct path for the build-manifest binary) Failed merges: - #77902 (Include aarch64-pc-windows-msvc in the dist manifests) r? `@ghost`
2020-10-14Rollup merge of #77909 - pietroalbini:fix-build-manifest-path, r=Mark-SimulacrumYuki Okushi-1/+1
bootstrap: set correct path for the build-manifest binary This changes the path of the binary inside the tarball to be: ``` build-manifest-{release}-{target}/build-manifest/bin/build-manifest ``` ...instead of: ``` build-manifest-{release}-{target}/build-manifest/bin/build-manifest/build-manifest ``` r? @Mark-Simulacrum
2020-10-14Rollup merge of #77895 - shepmaster:silicon-manifest, r=pietroalbiniYuki Okushi-0/+2
Include aarch64-apple-darwin in the dist manifests r? @ehuss /cc @pietroalbini @Mark-Simulacrum
2020-10-14Rollup merge of #77868 - Aaron1011:llvm-tools-opt-llc, r=Mark-SimulacrumYuki Okushi-0/+3
Include `llvm-dis`, `llc` and `opt` in `llvm-tools-preview` component Fixes #55890 It's useful to have `llc` and `opt` available when debugging an LLVM miscompilation,.
2020-10-14Rollup merge of #77825 - ethanboxx:min_const_generics_diagnostic, r=lcnrYuki Okushi-177/+177
`min_const_generics` diagnostics improvements As disscussed in [zulip/project-const-generics/non-trivial anonymous constant](https://rust-lang.zulipchat.com/#narrow/stream/260443-project-const-generics/topic/non-trivial.20anonymous.20constants). This is my first PR on the compiler. @lcnr is mentoring me on this PR. Related to #60551.
2020-10-14Rollup merge of #77786 - jyn514:rustdoc, r=Mark-SimulacrumYuki Okushi-2/+2
Mention rustdoc in `x.py setup` This lets new contributors know which option they should pick; previously it wasn't clear 'compiler' also included rustdoc. Unresolved questions: should this say 'compiler and tools' instead? I don't know of any tools that are modified in-tree other than rustdoc, though. r? @Mark-Simulacrum
2020-10-14Rollup merge of #77776 - jyn514:wrong-way, r=Mark-SimulacrumYuki Okushi-0/+9
Give an error when running `x.py test --stage 0 src/test/ui` The error can be overridden with `COMPILETEST_FORCE_STAGE0=1`. In practice I don't know why anyone would do this. r? @Mark-Simulacrum Closes https://github.com/rust-lang/rust/issues/77711
2020-10-14Rollup merge of #77239 - shepmaster:silicon-ci-plus, r=pietroalbiniYuki Okushi-8/+11
Enable building Cargo for aarch64-apple-darwin r? @ghost
2020-10-13bootstrap: set correct path for the build-manifest binaryPietro Albini-1/+1
2020-10-14switch the test to an actual MCVEDing Xiang Fei-14/+9
2020-10-14rustfmtDing Xiang Fei-1/+1
2020-10-14test derived from #74961Ding Xiang Fei-0/+29
2020-10-13Handle included config in bootstrap.pyAntoine Martin-0/+10
2020-10-13Implement "if-available" option for download-ci-llvmAntoine Martin-4/+22
2020-10-13aarch64-apple-darwin now includes CargoJake Goulding-1/+1
2020-10-13 Give an error when running `x.py test --stage 0 src/test/ui`Joshua Nelson-0/+9
2020-10-13Auto merge of #77762 - pietroalbini:dist-build-manifest, r=Mark-Simulacrumbors-56/+126
Dist build manifest This PR makes two changes that should remove a significant chunk of the time spent in our release process: cloning the `rust-lang/rust` monorepo, all its submodules, and building `bootstrap` to then invoke `build-manifest`: * `build-manifest` doesn't rely on a clone of the monorepo being present anymore. The only remaining bit of information it fetched from it (the Rust version) is instead bundled in the binary. * A new "component" is added, `build-manifest`. That component includes a prebuilt version of the tool, and it's *not* included in the Rustup manifest. This will allow `promote-release` to directly invoke the tool without interacting with our build system. * The Linux x86_64 CI is changed to also build the component mentioned above. It's the only CI builder tasked to do so, and to cleanly support this a new `--include-default-paths` flag was added to `./x.py`. * The `BUILD_MANIFEST_NUM_THREADS` environment variable is added to configure the number of threads at runtime. This PR is best reviewed commit-by-commit. r? `@Mark-Simulacrum`
2020-10-13Clean up rustdoc passesGuillaume Gomez-170/+176
2020-10-13Include aarch64-apple-darwin in the dist manifestsJake Goulding-0/+2