Commit Graph

534 Commits

Author SHA1 Message Date
Alex Crichton 14c6835e03 rustc: Wait for all codegen threads to exit
This commit updates rustc to wait for all codegen threads to exit before
allowing the main thread to exit. This is a stab in the dark to fix the
mysterious segfaults appearing on #55238, and hopefully we'll see
whether this actually fixes things in practice...
2018-11-02 06:53:25 -07:00
Alex Crichton 016eaf88f5 Use `jemalloc-sys` on Linux and OSX compilers
This commit adds opt-in support to the compiler to link to `jemalloc` in
the compiler. When activated the compiler will depend on `jemalloc-sys`,
instruct jemalloc to unprefix its symbols, and then link to it. The
feature is activated by default on Linux/OSX compilers for x86_64/i686
platforms, and it's not enabled anywhere else for now. We may be able to
opt-in other platforms in the future! Also note that the opt-in only
happens on CI, it's otherwise unconditionally turned off by default.

Closes #36963
2018-11-02 06:52:56 -07:00
Alex Crichton d0060d72e5 Bump nightly to 1.32.0
* Also update the bootstrap compiler
* Update cargo to 1.32.0
* Clean out stage0 annotations
2018-10-31 11:53:50 -07:00
Manish Goregaokar 49e712f122 Update clippy 2018-10-30 04:30:29 +00:00
Matthias Krüger 9378705f82 submodules: update clippy from 5afdf8b7 to b1d03437
Changes:
````
new_ret_no_self: add sample from #3313 to Known Problems section.
Support multiline comments and hopefully fix panic
Check for comments in collapsible ifs
Resolve ICE in needless range loop lint
RIIR update_lints: Update changelog links
Rename if_let_redundant_pattern_matching to redundant_pattern_matching
Add lint for redundant pattern matching for explicit return boolean
Fix issue #3322: reword help message for len_zero
Simplify manual_memcpy suggestion in some cases
Fix dogfood
Update known problems for unnecessary_fold
RIIR update_lints: Replace lint count in README.md
Rename `active_lints` to `usable_lints`
Add comment on WalkDir vs. fs::read_dir
sort_by -> sort_by_key
Some more documentation for clippy_dev
Use `WalkDir` to also gather from subdirectories
Avoid linting `boxed_local` on trait implementations.
Website: Make lint categories linkable
Restore clippy_dummy's placeholder name
Swap order of methods in `needless_range_loop` suggestion in some cases
Revert "Exclude pattern guards from unnecessary_fold lint"
Exclude pattern guards from unnecessary_fold lint
````
2018-10-21 17:56:00 +02:00
Alex Crichton 4f661c016f Update Cargo, build curl/OpenSSL statically via features
In addition to to updating Cargo's submodule and Cargo's dependencies,
this also updates Cargo's build to build OpenSSL statically into Cargo
as well as libcurl unconditionally. This removes OpenSSL build logic
from the bootstrap code, and otherwise requests that even on OSX we
build curl statically.
2018-10-20 18:47:01 -07:00
Diogo Sousa 3fc275df6c Added graphviz visualization for obligation forests.
This can be a big help when debugging the trait resolver.
2018-10-14 16:12:07 +01:00
Matthias Krüger ab4e697d0b submodules: update cargo from ad6e5c00 to 5dbac988
Changes:

Switch to use crates-io as the registry name and don't include publish when registry is not specified
fix redundant pkgid generation
validate some basic properties of a valid resolve
Detail dep name in invalid version error
Fix dashes in rename dependencies.
Bump flate2 to 1.0.3
Add default in config document
Add support for providing a default registry
Add support for registry to new and init
use impl Iterator instead of custom types in `source`
let jetbrains reorder some impls to match the definition
use impl Iterator instead of custom types in resolver and graph
remove Graph::sort as it is unused
fmt
Bump libgit2-sys to 0.7.9
Switch to use registry
Allow registry option for cargo install.
Second attempt at fixing msys terminal width.
Try to improve "version not found" error
Fix typo
2018-10-13 19:11:29 +02:00
Matthias Krüger 2e84e9c09d submodules: update rls from 15d4d4a to 440a985
Changes:

Apply Clippy lints
Respect build_dir when creating external build plans
Fix Windows tests
Implement external build plan
Detect manifest diagnostic position for toml:🇩🇪:Error
Fix std::sync hover doc expectation
Apply CI specific long timeout
Propagate cargo errors as manifest diagnostics
Add test for use statement function completions
Refactor cmd test `within_timeout`
Avoid stdout-writer/rls process exit race
Improve cmd test "no shutdown response" error message
Add RUST_BACKTRACE=1 to ci env
Improve cmd test timeout reliability
Fix use statement function suggestions
Revert "Revert "Remove "edition" Cargo feature (it's stable now)""
Add build_wait() tests
Automatically tune wait_to_build
Rework cmd tests

Fixes #54697
2018-10-13 19:11:29 +02:00
Ralf Jung 6426cbe382 update miri 2018-10-13 09:10:24 +02:00
Guillaume Gomez c5a025aae6 Fix mobile doc display 2018-10-11 22:23:39 +02:00
scalexm 663002f222 Pass around interned refs to goals and not goals 2018-10-08 12:55:18 +02:00
Vadim Petrochenkov 0d8e9cd4df Reapply the macro_rules disambiguation changes from master 2018-10-05 11:46:12 +04:00
Oliver Schneider b0643add6d Update Cargo.lock 2018-10-04 12:51:58 +02:00
Manish Goregaokar c2c8f8a56a Update clippy 2018-10-03 17:12:15 +02:00
Pietro Albini 662f85ea26
Rollup merge of #54648 - alexcrichton:update-cargo, r=nikomatsakis
Update Cargo's submodule

Bring in a few updates and fixes, mostly a standard update.
2018-10-02 22:54:30 +02:00
Alex Crichton d99e7c2dae Update Cargo's submodule
Bring in a few updates and fixes, mostly a standard update.
2018-09-28 11:28:00 -07:00
Igor Matuszewski d45f87701c Emit only necessary compilation options in save-analysis
This is `command`, `directory` and `output` file.
2018-09-28 01:53:59 +02:00
Matthias Krüger 45f45e53a5 update clippy submodule to a72e786c
Fixes clippy build.
2018-09-26 19:17:11 +02:00
ljedrz 130a32fa72 Remove OneVector 2018-09-26 10:43:37 +02:00
Nick Cameron 90701935b3 Update rustfmt and RLS 2018-09-26 09:46:06 +12:00
Matthias Krüger 500352f5bc update rls to 32d457717ce37babef199fe4984b1e20d4e108d4 2018-09-23 02:19:57 +02:00
Alex Crichton 8ccf112be2 Update Cargo
This commit brings in a few Cargo updates

* Updates Cargo with experimental HTTP/2 support - a post on the forums
  will be made about testing this when available.
* Bumps Cargo's own version number
2018-09-21 10:23:12 -07:00
QuietMisdreavus 354507e61f shuffle ownership of `external_traits`
constraints:

- clean/inline.rs needs this map to fill in traits when inlining
- fold.rs needs this map to allow passes to fold trait items
- html/render.rs needs this map to seed the Cache.traits map of all
  known traits

The first two are the real problem, since `DocFolder` only operates on
`clean::Crate` but `clean/inline.rs` only sees the `DocContext`. The
introduction of early passes means that these two now exist at the same
time, so they need to share ownership of the map. Even better, the use
of `Crate` in a rustc thread pool means that it needs to be Sync, so it
can't use `Lrc<Lock>` to manually activate thread-safety.

`parking_lot` is reused from elsewhere in the tree to allow use of its
`ReentrantMutex`, as the relevant parts of rustdoc are still
single-threaded and this allows for easier use in that context.
2018-09-20 05:54:26 -05:00
Alex Crichton b1305c22e3 Update some `*-sys` dependencies of Cargo/RLS
This is intended to help solve #54206 on nightly where the RLS on MinGW is
having build issues with accidentally building a `curl` library which links to
pthread symbols on Windows (where it should use native mutex locking instead).
The build system for these `*-sys` crates have all been rewritten to be based on
`cc` to bypass native build systems and platform detection to make sure we
configure them correctly.
2018-09-19 18:17:58 -07:00
David Wood 874e08bdd8
Log when buffering a diagnostic.
This is useful in debugging when and where errors are emitted in
logs.
2018-09-18 13:45:24 +02:00
Ralf Jung 8d908b5b24 update miri 2018-09-17 09:20:03 +02:00
Eduard-Mihai Burtescu 4529d10636 Update submodules to include rust-lang-nursery/rust-clippy#3189 and rust-lang-nursery/rls#1054. 2018-09-15 22:48:10 +03:00
Eric Huss 60be0686e0 merge cargo changes done by https://github.com/rust-lang/rust/pull/53935/
(done by matthiaskrgr, but I authored ehuss)
2018-09-09 12:42:43 +02:00
Gabriel Majeri b31eaa4a08 Update `petgraph` dependency to 0.4.13
This fixes building `bootstrap` using a local Rust nightly.
2018-09-08 09:04:29 +03:00
Matthias Krüger 10e7b76dfc update clippy submodule
updates to cafef7b576
2018-09-07 09:18:03 +02:00
John Renner 9b27de41d4 Introduce Custom Test Frameworks 2018-09-04 22:33:00 -07:00
Mark Rousskov 9ec5ef541a Breaking change upgrades 2018-09-04 13:22:08 -06:00
Igor Matuszewski e976baee55 Update Rustfmt to 0.99.4
This pulls the same version of rustc-ap-* libs as RLS does.
2018-09-04 12:02:28 +02:00
Michael Woerister abd5cc3364 Always add all modules to the global ThinLTO module analysis when compiling incrementally. 2018-08-31 15:22:52 +02:00
Oliver Schneider 5983479a4d Update clippy submodule 2018-08-29 13:15:55 +02:00
Nicholas Nethercote 8cecfa62e8 Remove `AccumulateVec` and its uses.
It's basically just a less capable version of `SmallVec`.
2018-08-29 08:32:11 +10:00
John Kåre Alsaker 0972658578 Update clippy 2018-08-27 06:48:15 +02:00
Alex Crichton 2863b75425 Update Cargo submodule
Also update Cargo's dependencies while we're at it
2018-08-25 16:26:28 -07:00
Igor Matuszewski 3a17cf7f8f Bump serde_json 1.0.24 -> 1.0.25
This fixes 'cannot find macro `json_internal!` in this scope' RLS
compilation error in Rust CI, presumably due to a local macro fix in
serde_json 1.0.25
(e40cbad70b)
2018-08-25 19:44:15 +02:00
Igor Gutorov 4d81fe9243 Use optimized SmallVec implementation 2018-08-23 10:45:53 +03:00
Guillaume Gomez 55d98236f9
Rollup merge of #53442 - staktrace:rlsbump, r=nrc
Update version of rls-data used with save-analysis

This part 1/3 for fixing rust-lang/rust#53440.
2018-08-22 17:45:32 +02:00
Eduard-Mihai Burtescu 9b1d3c70ac rustc_resolve: don't allow paths starting with `::crate`. 2018-08-17 12:59:56 +03:00
Kartikaya Gupta a50f29a47b Update version of rls-data used with save-analysis
This part 1/3 for fixing rust-lang/rust#53440.
2018-08-16 21:40:52 -04:00
kennytm 0c9e0e33b4
Rollup merge of #53377 - cuviper:pointer-elf_size, r=alexcrichton
std: Use target_pointer_width for BACKTRACE_ELF_SIZE

The former code used `target.contains("64")` to detect Elf64 targets,
but this is inaccurate in a few cases:

- `s390x-unknown-linux-gnu` is 64-bit
- `sparcv9-sun-solaris` is 64-bit
- `x86_64-unknown-linux-gnux32` is 32-bit

Instead the `std` build script can use `CARGO_CFG_TARGET_POINTER_WIDTH`
to reliably detect 64-bit targets for libbacktrace.

Also update to backtrace-sys 0.1.24 for alexcrichton/backtrace-rs#122.
2018-08-17 00:13:25 +08:00
Guillaume Gomez 7acfa8615a
Rollup merge of #53388 - GuillaumeGomez:fix-links-color, r=frewsxcv
Fix links' color

Fixes #53375.

Problem was coming from the minifier.

r? @frewsxcv
2018-08-15 19:20:28 +02:00
Guillaume Gomez cf5ee8f59b Fix links' color 2018-08-15 15:07:07 +02:00
Eric Huss 9730871773 Update cargo 2018-08-14 22:24:41 -07:00
Josh Stone e0d8364dad std: Use target_pointer_width for BACKTRACE_ELF_SIZE
The former code used `target.contains("64")` to detect Elf64 targets,
but this is inaccurate in a few cases:

- `s390x-unknown-linux-gnu` is 64-bit
- `sparcv9-sun-solaris` is 64-bit
- `x86_64-unknown-linux-gnux32` is 32-bit

Instead the `std` build script can use `CARGO_CFG_TARGET_POINTER_WIDTH`
to reliably detect 64-bit targets for libbacktrace.

Also update to backtrace-sys 0.1.24 for alexcrichton/backtrace-rs#122.
2018-08-14 21:08:42 -07:00
Tom Tromey 6e3a4f4ddd Add lldb to the build
This optionally adds lldb (and clang, which it needs) to the build.

Because rust uses LLVM 7, and because clang 7 is not yet released, a
recent git master version of clang is used.

The lldb that is used includes the Rust plugin.

lldb is only built when asked for, or when doing a nightly build on
macOS.  Only macOS is done for now due to difficulties with the Python
dependency.
2018-08-14 18:59:23 -06:00