Commit graph

16347 commits

Author SHA1 Message Date
Felix S. Klock II
1df6d42fff you can have // compile-pass markers in headers of compile-fail/ tests.
(It seems only `compile-fail-fulldeps/` exercises this functionality,
unfortunately.)
2018-09-21 16:21:39 +02:00
Felix S. Klock II
bae2bf12f6 Similar to above, failed to notice that Mode::Incremental delegates to run_{rpass,rfail,cfail}_test.
(Also, maybe we should revise the names to make it clear that sometimes "cfail" means "cpass"...)
2018-09-21 16:21:39 +02:00
Felix S. Klock II
a66b7d4e9d Mark ParseFail as tests that are not expected to compile.
(I did not notice earlier that `ParseFail` delegates to `fn run_cfail_test`.)
2018-09-21 16:21:38 +02:00
Felix S. Klock II
d28c5bafff Provide way for ui tests to opt out of having their output checked.
Namely, this adds support for:

 * `// dont-check-compiler-stdout`, and
 * `// dont-check-compiler-stderr`.

Obviously almost all ui tests wont want to opt into these, since the whole point
of a ui test is to check the compiler ui. However, since this PR is converting
run-pass into (another set of) ui tests, these header options make sense in that
context.

(Also this puts us into a better position for eventually turning
*every* test suite into a ui test suite, by making ui-ness the default
and forcing tests to opt out explicitly.)
2018-09-21 16:21:37 +02:00
Felix S. Klock II
ae0a53a39b Support // skip-codegen in header of ui tests
(just like how they behaved under previous run-pass semantics)
2018-09-21 16:21:37 +02:00
Felix S. Klock II
ddb1a2afb7 Make src/test/run-pass/ act like an alternative ui test suite. 2018-09-21 16:21:36 +02:00
flip1995
059ab7715c
Update Clippy 2018-09-17 15:37:19 +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
flip1995
adf4a47210
Update Clippy 2018-09-14 14:00:32 +02:00
Alex Crichton
7a1eed73be Update Cargo
Should bring in some nice progress bars for compilations!
2018-09-13 18:35:17 -07:00
Michael Woerister
3beb762dcf Really make CGU names unique across crates. 2018-09-12 12:46:48 +02:00
Alex Crichton
00e6d54609 Update Cargo submodule
Bring in a few last-minute updates before the 1.30.0 release
2018-09-10 16:40:57 -07:00
Tinco Andringa
518bcffa31 refactor so that it's no longer possible to call print_source incorrectly 2018-09-10 12:33:39 +02:00
Tinco Andringa
ca901a187c dont pass in src if we are not reading from stdin in compiletest 2018-09-10 12:33:39 +02:00
Felix S. Klock II
e4f47f43a6 Update compiletest so that the pretty tests only read from stdin when they *have* to.
This allows us to test expansion of files that use `mod foo;` syntax.
2018-09-10 12:33:38 +02:00
Eduard-Mihai Burtescu
0a33de04cf rustc_resolve: inject uniform_paths canaries regardless of the feature-gate, on Rust 2018. 2018-09-10 11:48:46 +03:00
Matthias Krüger
3387f80ce3 submodules: update clippy, rls with crate visibility patches, also update cargo 2018-09-09 03:00:00 +02:00
kennytm
87fbf54413
Rollup merge of #54023 - matthiaskrgr:clippy, r=oli-obk
update clippy submodule

updates to cafef7b576
2018-09-07 18:14:28 +08:00
kennytm
d2a0f98159
Rollup merge of #53895 - joshtriplett:tidy-tidy, r=nikomatsakis
tidy: Cleanups and clippy warning fixes

This eliminates various clippy warnings in the tidy tool, as well as
making some related cleanups. These changes should not introduce any
functional differences.
2018-09-07 15:26:51 +08:00
Matthias Krüger
10e7b76dfc update clippy submodule
updates to cafef7b576
2018-09-07 09:18:03 +02:00
bors
780b0c7bbf Auto merge of #53951 - tromey:restore-lldb-build, r=alexcrichton
Restore lldb build

commit 6c10142251 ("Update LLVM submodule") disabled the lldb build.
This patch updates the lldb and clang submodules to once again build
against the LLVM that is included in the Rust tree, and reverts the
.travis.yml changes from that patch.
2018-09-05 18:11:27 +00:00
Tom Tromey
7bb30ff0d9 Pick up State.h include path change 2018-09-05 10:37:05 -06:00
Mark Rousskov
9ec5ef541a Breaking change upgrades 2018-09-04 13:22:08 -06:00
Tom Tromey
289da84381 Restore lldb build
commit 6c10142251 ("Update LLVM submodule") disabled the lldb build.
This patch updates the lldb and clang submodules to once again build
against the LLVM that is included in the Rust tree, and reverts the
.travis.yml changes from that patch.
2018-09-04 11:21:58 -06:00
Igor Matuszewski
d5e5e76a7d Update RLS wrt recent Clippy changes 2018-09-04 14:49:21 +02: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
Igor Matuszewski
2944f2b6e8 Update RLS 2018-09-04 12:02:28 +02:00
bors
ee73f80dc9 Auto merge of #53673 - michaelwoerister:incr-thinlto-2000, r=alexcrichton
Enable ThinLTO with incremental compilation.

This is an updated version of #52309. This PR allows `rustc` to use (local) ThinLTO and incremental compilation at the same time. In theory this should allow for getting compile-time improvements for small changes while keeping the runtime performance of the generated code roughly the same as when compiling non-incrementally.

The difference to #52309 is that this version also caches the pre-LTO version of LLVM bitcode. This allows for another layer of caching:
1. if the module itself has changed, we have to re-codegen and re-optimize.
2. if the module itself has not changed, but a module it imported from during ThinLTO has, we don't need to re-codegen and don't need to re-run the first optimization phase. Only the second (i.e. ThinLTO-) optimization phase is re-run.
3. if neither the module itself nor any of its imports have changed then we can re-use the final, post-ThinLTO version of the module. (We might have to load its pre-ThinLTO version though so it's available for other modules to import from)
2018-09-03 13:59:57 +00:00
Michael Woerister
d5545751f9 Add memmap crate to tidy whitelist. 2018-09-03 13:26:24 +02:00
Manish Goregaokar
2e15511050 Update clippy 2018-09-02 13:29:50 +05:30
Josh Triplett
a5c86fe6e1 tidy: features.rs: Remove a redundant .contains
The match expression immediately below it checks the same condition.
2018-09-01 17:44:16 -07:00
Josh Triplett
ebdc1bda71 tidy: features.rs: Use splitn rather than a complex slice 2018-09-01 17:43:26 -07:00
Josh Triplett
0e65aeb95d tidy: features.rs: collect_lib_features: Simplify
Use `if let` to simplify a match, and use `contains_key` instead of
`get`.
2018-09-01 17:41:45 -07:00
Josh Triplett
87658bb667 tidy: Use an inclusive range rather than a +1 bound
This improves readability and eliminates a clippy warning.
2018-09-01 17:39:07 -07:00
Josh Triplett
d5b1dee472 tidy: Eliminate an unnecessary .into_iter() 2018-09-01 17:38:09 -07:00
Josh Triplett
fc3419c762 tidy: deps: Hoist a complex multi-line if condition into a let
This makes the code more readable, and eliminates a clippy warning.
2018-09-01 17:36:37 -07:00
Josh Triplett
40ea999915 tidy: unstable_book.rs: Clean up directory iteration
Drop unnecessary .into_iter() (also fixing a clippy warning), and use
path functions to handle file extensions.
2018-09-01 17:14:39 -07:00
Josh Triplett
226d79c30a tidy: Avoid "let ref mut = ..."
This also eliminates a clippy warning.
2018-09-01 17:14:39 -07:00
Josh Triplett
cd20cdf7e0 tidy: Use "const" instead of "static, and remove implied 'static lifetimes
Dropping the redundant lifetimes also eliminates a clippy warning.
2018-09-01 17:14:38 -07:00
Josh Triplett
decc3b0eba tidy: extdeps.rs: Avoid an unnecessary collect() 2018-09-01 16:46:40 -07:00
Josh Triplett
896c3ce2f1 tidy: extdeps.rs: Clean up loop iteration to use "for"
Also eliminates a clippy lint.
2018-09-01 16:46:06 -07:00
Josh Triplett
fb317aaf9e tidy: cargo.rs: Clean up loop to use "for" instead of "while let"
Eliminates a clippy warning.

Also drop the unnecessary `.peekable()`.
2018-09-01 16:45:50 -07:00
Josh Triplett
2893a2127d tidy: Clean up argument handling
Use `.nth(n)` rather than `.skip(n).next()` (also fixes a clippy
warning), and use `.into()` and a type signature rather than
`PathBuf::from`.
2018-09-01 12:24:03 -07:00
Josh Triplett
0f40a12ea3 tidy: Use is_empty() instead of len tests
Fixes a clippy warning, and improves readability.
2018-09-01 12:20:16 -07:00
Josh Triplett
cd51523715 tidy: Use chars for single-character patterns
Fixes the clippy "single_char_pattern" lint, and (marginally) improves
performance.
2018-09-01 12:19:04 -07:00
bors
e6381a7f37 Auto merge of #53822 - dvc94ch:riscv, r=japaric
[RISCV] Use lld as the default linker; Enable C extension; Add riscv32imc-unknown-none-elf target

The riscv32imc-unknown-none-elf target is intended for soft cores.

The riscv32imc target is supported by the following popular soft cores:

picorv32: https://github.com/cliffordwolf/picorv32
vexriscv: https://github.com/SpinalHDL/VexRiscv
pulp riscy: https://github.com/pulp-platform/riscv
pulp zero-riscy: https://github.com/pulp-platform/zero-riscy
2018-09-01 06:58:16 +00:00
bors
b7e44027a5 Auto merge of #53762 - flip1995:tool_lints, r=Manishearth
Backwards compatibility for tool/clippy lints

cc #44690
cc https://github.com/rust-lang-nursery/rust-clippy/pull/2977#issuecomment-409706557

This is the next step towards `tool_lints`.

This makes Clippy lints still work without scoping, but will warn and suggest the new scoped name. This warning will only appear if the code is checked with Clippy itself.

There is still an issue with using the old lint name in inner attributes. For inner attributes the warning gets emitted twice. I'm currently not really sure why this happens, but will try to fix this ASAP.

r? @Manishearth
2018-09-01 03:27:42 +00:00
bors
06a59da5af Auto merge of #53611 - alexcrichton:update-llvm, r=nikomatsakis
Update LLVM submodule

This commit updates the LLVM submodule to the current trunk of LLVM itself. This
brings a few notable improvements for the wasm target:

* Support for wasm atomic instructions is greatly improved
* Renamed memory wasm intrinsics are fully supported
* LLD has fixed a quadratic execution bug with large numbers of relocations in
  wasm files.

The compiler-rt submodule has been updated in tandem as well.
2018-09-01 01:07:31 +00:00
Alex Crichton
6c10142251 Update LLVM submodule
This commit updates the LLVM submodule to the current trunk of LLVM itself. This
brings a few notable improvements for the wasm target:

* Support for wasm atomic instructions is greatly improved
* Renamed memory wasm intrinsics are fully supported
* LLD has fixed a quadratic execution bug with large numbers of relocations in
  wasm files.

The compiler-rt submodule has been updated in tandem as well.
2018-08-31 16:00:41 -07:00