summary refs log tree commit diff
path: root/src/librustc_driver/lib.rs
AgeCommit message (Collapse)AuthorLines
2018-07-25force the doctest rustc thread to share the name of the testQuietMisdreavus-5/+17
2018-06-05Impl CompilerCalls for CompileController instead of AdHocCompilerCallsbjorn3-24/+0
2018-06-05Add AdHocCalls and pass self to build_controller as Box<Self>bjorn3-22/+50
2018-05-17Add edition to expansion infoVadim Petrochenkov-1/+2
2018-05-17Rename trans to codegen everywhere.Irina Popa-36/+38
2018-05-13Add a Rayon thread poolJohn Kåre Alsaker-16/+22
2018-05-13Add Sync bounds to the crate storeJohn Kåre Alsaker-0/+2
2018-05-02make it compile againflip1995-1/+1
2018-05-02Allow Path for name of MetaItemSeiichi Uchida-1/+1
2018-04-27rustc_driver: Catch ICEs on the main thread tooJosh Stone-1/+2
2018-04-26Rename rustc_back::target to rustc_target::spec.Irina Popa-2/+2
2018-04-17Use #[no_debug] to work around LLVM problem with rustc_driver::get_trans::LOAD.Michael Woerister-0/+4
2018-04-17Rollup merge of #49606 - varkor:pipe-repair, r=alexcrichtonkennytm-0/+12
Prevent broken pipes causing ICEs As the private `std::io::print_to` panics if there is an I/O error, which is used by `println!`, the compiler would ICE if one attempted to use a broken pipe (e.g. `rustc --help | false`). This introduces a new (private) macro `try_println!` which allows us to avoid this. As a side note, it seems this macro might be useful publicly (and actually there seems to be [a crate specifically for this purpose](https://crates.io/crates/try_print/)), though that can probably be left for a future discussion. One slight alternative approach would be to simply early exit without an error (i.e. exit code `0`), which [this comment](https://github.com/rust-lang/rust/issues/34376#issuecomment-377822526) suggests is the usual approach. I've opted not to take that approach initially, because I think it's more helpful to know when there is a broken pipe. Fixes #34376.
2018-04-11Rollup merge of #49525 - varkor:sort_by_cached_key-conversion, r=scottmcmkennytm-8/+3
Use sort_by_cached_key where appropriate A follow-up to https://github.com/rust-lang/rust/pull/48639, converting various slice sorting calls to `sort_by_cached_key` when the key functions are more expensive.
2018-04-11Prevent EPIPE causing ICEs in rustc and rustdocvarkor-0/+12
2018-04-09Convert sort_by to sort_by_cached_keyvarkor-8/+3
2018-04-08Move deny(warnings) into rustbuildMark Simulacrum-1/+0
This permits easier iteration without having to worry about warnings being denied. Fixes #49517
2018-04-06Use `Ident` instead of `Name` in `MetaItem`Vadim Petrochenkov-1/+1
2018-04-04Auto merge of #48575 - ishitatsuyuki:unix-no-thread, r=alexcrichtonbors-8/+49
rustc_driver: get rid of the extra thread **Do not rollup** We can alter the stack size afterwards on Unix. Having a separate thread causes poor debugging experience when interrupting with signals. I have to get the backtrace of the all thread, as the main thread is waiting to join doing nothing else. This patch allows me to just run `bt` to get the desired backtrace.
2018-03-25Rollup merge of #49046 - Zoxc:error-summary, r=michaelwoeristerkennytm-24/+30
Always print `aborting due to n previous error(s)` r? @michaelwoerister
2018-03-20Reinit the stack guard on unexpected failureTatsuyuki Ishi-3/+3
2018-03-19Address review commentsTatsuyuki Ishi-3/+5
2018-03-18rustc_driver: get rid of extra thread on WindowsTatsuyuki Ishi-1/+5
2018-03-18rustc_driver: get rid of extra thread on UnixTatsuyuki Ishi-8/+43
2018-03-17Auto merge of #48904 - Zoxc:code-and-file-maps, r=michaelwoeristerbors-2/+2
Make CodeMap and FileMap thread-safe r? @michaelwoerister
2018-03-16Always print `aborting due to n previous error(s)` and only print it once ↵John Kåre Alsaker-24/+30
for multi-threaded code
2018-03-15Require a thread-safe file loaderJohn Kåre Alsaker-2/+2
2018-03-15Rollup merge of #48993 - alexheretic:fix-48816, r=michaelwoeristerkennytm-0/+6
fix #48816 don't print help on indirect compiler ICE https://github.com/rust-lang/rust/issues/48816#issuecomment-372817573
2018-03-15Rollup merge of #48765 - Phlosioneer:10234-wall-help-message, r=estebankkennytm-0/+16
Add info message for -Wall command Users coming from other languages (namely C and C++) often expect to use a -Wall flag. Rustc doesn't support that, and previously it simply printed that it didn't recognize the "all" lint. This change makes rustc print out a help message, explaining: - Why there is no -Wall flag - How to view all the available warnings - Point out that the most commonly used warning is -Wunused - Instead of using a command-line flag, the user should consider a !#[warn(unused)] directive in the root of their crate. I tried to keep the language consistent with the other usage help. Comment if I should change anything. closes #10234, if accepted.
2018-03-14Remove syntax and syntax_pos thread localsJohn Kåre Alsaker-0/+11
2018-03-13fix #48816 don't print help on indirect compiler ICEAlex Butler-0/+6
2018-03-13introduce `infcx.at(..).normalize(..)` operation [VIC]Niko Matsakis-0/+1
It is backed by the new `normalize_projection_ty` query, which uses canonicalization.
2018-03-12Update -Wall message based on feedbackPhlosioneer-4/+3
The reference to -Wunused was removed, and some phrasing was changed.
2018-03-09Move PROFQ_CHAN to a Session fieldJohn Kåre Alsaker-1/+1
2018-03-08Allow tools (e.g. miri) to enable rust loggingOliver Schneider-1/+7
2018-03-08Move librustc_const_eval to librustc_mirOliver Schneider-2/+0
2018-03-06Fix trailing whitespacePhlosioneer-1/+1
2018-03-06Update env_logger to 0.5.4Alex Crichton-1/+1
It looks like this cuts down on the number of dependencies in env_logger and notably cuts out a difference between a shared dependency of rls/cargo. My goal here is to ensure that when we compile the RLS/Cargo on CI we only compile Cargo once, and this is one step towards that!
2018-03-06Add info message for -Wall commandPhlosioneer-0/+17
Users coming from other languages (namely C and C++) often expect to use a -Wall flag. Rustc doesn't support that, and previously it simply printed that it didn't recognize the "all" lint. This change makes rustc print out a help message, explaining: - Why there is no -Wall flag - How to view all the available warnings - Point out that the most commonly used warning is -Wunused - Instead of using a command-line flag, the user should consider a !#[warn(unused)] directive in the root of their crate.
2018-03-04Rollup merge of #48664 - Keruspe:codegen, r=alexcrichtonkennytm-1/+3
make codegen-backends directory name configurable This allows to parallel-install several versions of rust system-wide Fixes #48263
2018-03-02make codegen-backends directory name configurableMarc-Antoine Perennou-1/+3
This allows to parallel-install several versions of rust system-wide Fixes #48263 Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2018-03-02Replace Rc with Lrc for shared dataJohn Kåre Alsaker-2/+2
2018-02-28Rollup merge of #48461 - Manishearth:epoch-dyn-trait, r=nmatsakisManish Goregaokar-10/+10
Fixes #47311. r? @nrc
2018-02-28Rollup merge of #48266 - pietroalbini:report-compiler-flags-on-ice, ↵kennytm-5/+80
r=michaelwoerister Report non-standard compile flags on ICE Some ICEs (such as the recent #48248) only happens when a non-standard compiler flag is provided to rustc, but users don't always report the used flags. This can slow down reproducing the issue, so this PR shows all the non-standard compiler flags in the ICE error message. For example, the output of #48248 with this PR is: ``` error: internal compiler error: [...] thread 'rustc' panicked at [...] note: Run with `RUST_BACKTRACE=1` for a backtrace. note: the compiler unexpectedly panicked. this is a bug. note: we would appreciate a bug report: [...] note: rustc 1.25.0-dev running on x86_64-unknown-linux-gnu note: compiler flags: -C link-dead-code ``` ### Open questions * At the moment, only `-C` and `-Z` flags are shown by default, and all the ones provided by cargo in a standard build are ignored: I did this to only show the flags that probably caused the ICE, and to remove some noise from the message. This removed flags like `opt-level` and `debuginfo` though, could those be useful for reproducing ICEs?
2018-02-23Report non-standard compile flags on ICEPietro Albini-5/+80
2018-02-23Allow future-incompat lints to mention an epochManish Goregaokar-10/+10
2018-02-20stage0 cfg cleanupMark Simulacrum-8/+0
2018-01-31Auto merge of #47900 - kennytm:rollup, r=kennytmbors-8/+23
Rollup of 16 pull requests - Successful merges: #47838, #47840, #47844, #47874, #47875, #47876, #47884, #47886, #47889, #47890, #47891, #47795, #47677, #47893, #47895, #47552 - Failed merges:
2018-02-01Rollup merge of #47895 - varkor:non-utf-stdin, r=estebankkennytm-7/+22
Fix ICE when reading non-UTF-8 input from stdin Fixes #22387.
2018-01-31rustc: Move location of `codegen-backends` dirAlex Crichton-1/+1
Right now this directory is located under: $sysroot/lib/rustlib/$target/lib/codegen-backends but after seeing what we do in a few other places it seems that a more appropriate location would be: $sysroot/lib/rustlib/$target/codegen-backends so this commit moves it!