Commit graph

1328 commits

Author SHA1 Message Date
Matthias Krüger
5086280c3a submodules: update clippy from 9d337313 to 5afdf8b7
Changes:

````
fix for rustc master
mem_forget: fix syntax error in code sample
explicit_counter_loop fix #3308 false positive
new_ret_no_self test remove tool lints cfg flag
Added new_ret_no_self exception to clippy to pass dogfood tests
Removed new_ret_no_self tests from method.rs
new_ret_no_self correctly lint impl return
Removed unused variables
new_ret_no_self fix false positive for impl trait return with associated type self
new_ret_no_self corrected panic and added test stderr
new_ret_no_self added positive test cases
Fix some more `stutter` warnings
unused unit lint
Install Windows SDK 10.0 on travis
cmp_owned refactor
cmp_owned correct error message if rhs is deref
Add a comment reminding to update README if the default changes
Specify which categories are enabled by default
Only run markdown linter on linux
Move Travis Windows build to allowed failures
Add Travis windows build
Fix `doc_markdown` lints
Fix `stutter` lints
Fix `similar_names` warnings
cmp_owned current suggestion for multiple deref
cmp_owned add test for multiple dereference
Corrected single-character string constant used as pattern found in dogfood test
Fixes 3289, cmp_owned wording and false positive
````
2018-10-15 06:50:56 +02: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
Matthias Krüger
ce61be81be submodules: update clippy from 32b1d1fc to 9d337313
Changes:

Remove now-useless `allow(unknown_lints)`
Stabilize tool lints
Use `impl Iterator` in arg position in clippy_dev
Fix fn_to_numeric_cast_with_truncation suppression
Limit commutative assign op lint to primitive types
Clarify code
Fix #2937
Fix cast_possible_wrap and cast_sign_loss warnings
Fix cast_possible_truncation warnings
Fixes #2925 cmp_owned false positive
if_let_redundant_pattern_matching: use Span.to() instead of Span.with_hi() to fix crash.
Improve diagnostics in case of lifetime elision (closes #3284)
Fix items_after_statements for `const`s
Fix items_after_statements for sub-functions
Fix items_after_statements for `use` statements
Don't suggest cloned() for map Box deref
Fix excessive_precision false positive
Fix FP in `fn_to_numeric_cast_with_truncation`
new_without_default should not warn about unsafe new
fix command to manually test an example
Add license to README
Adding more detail to filter_map lint documentation.
additional people
Add license header to other files
Add license header to Rust files
Relicense clippy
Document relicensing process
Fix util/export.py to include lints from methods
2018-10-13 19:11:29 +02:00
Ralf Jung
6426cbe382 update miri 2018-10-13 09:10:24 +02:00
bors
4623d48893 Auto merge of #54764 - tromey:test-rust-lldb, r=alexcrichton
Run debuginfo tests against rust-enabled lldb, when possible

If the rust-enabled lldb was built, then use it when running the
debuginfo tests.  Updating the lldb submodule was necessary as this
needed a way to differentiate the rust-enabled lldb, so I added a line
to the --version output.

This adds compiletest commands to differentiate between the
rust-enabled and non-rust-enabled lldb, as is already done for gdb.  A
new "rust-lldb" header directive is also added, but not used in this
patch; I plan to use it in #54004.

This updates all the tests.
2018-10-10 02:08:23 +00:00
Ralf Jung
db1663d598 update miri 2018-10-09 13:08:00 +02:00
Tom Tromey
ac33b2e578 Run debuginfo tests against rust-enabled lldb, when possible
If the rust-enabled lldb was built, then use it when running the
debuginfo tests.  Updating the lldb submodule was necessary as this
needed a way to differentiate the rust-enabled lldb, so I added a line
to the --version output.

This adds compiletest commands to differentiate between the
rust-enabled and non-rust-enabled lldb, as is already done for gdb.  A
new "rust-lldb" header directive is also added, but not used in this
patch; I plan to use it in #54004.

This updates all the tests.
2018-10-08 11:04:24 -06:00
bors
13429136b8 Auto merge of #54451 - alexcrichton:no-mangle-extern-linkage, r=michaelwoerister
rustc: Allow `#[no_mangle]` anywhere in a crate

This commit updates the compiler to allow the `#[no_mangle]` (and
`#[export_name]` attributes) to be located anywhere within a crate.
These attributes are unconditionally processed, causing the compiler to
always generate an exported symbol with the appropriate name.

After some discussion on #54135 it was found that not a great reason
this hasn't been allowed already, and it seems to match the behavior
that many expect! Previously the compiler would only export a
`#[no_mangle]` symbol if it were *publicly reachable*, meaning that it
itself is `pub` and it's otherwise publicly reachable from the root of
the crate. This new definition is that `#[no_mangle]` *is always
reachable*, no matter where it is in a crate or whether it has `pub` or
not.

This should make it much easier to declare an exported symbol with a
known and unique name, even when it's an internal implementation detail
of the crate itself. Note that these symbols will persist beyond LTO as
well, always making their way to the linker.

Along the way this commit removes the `private_no_mangle_functions` lint
(also for statics) as there's no longer any need to lint these
situations. Furthermore a good number of tests were updated now that
symbol visibility has been changed.

Closes #54135
2018-10-07 03:07:16 +00:00
Alex Crichton
d7d7045374 rustc: Allow #[no_mangle] anywhere in a crate
This commit updates the compiler to allow the `#[no_mangle]` (and
`#[export_name]` attributes) to be located anywhere within a crate.
These attributes are unconditionally processed, causing the compiler to
always generate an exported symbol with the appropriate name.

After some discussion on #54135 it was found that not a great reason
this hasn't been allowed already, and it seems to match the behavior
that many expect! Previously the compiler would only export a
`#[no_mangle]` symbol if it were *publicly reachable*, meaning that it
itself is `pub` and it's otherwise publicly reachable from the root of
the crate. This new definition is that `#[no_mangle]` *is always
reachable*, no matter where it is in a crate or whether it has `pub` or
not.

This should make it much easier to declare an exported symbol with a
known and unique name, even when it's an internal implementation detail
of the crate itself. Note that these symbols will persist beyond LTO as
well, always making their way to the linker.

Along the way this commit removes the `private_no_mangle_functions` lint
(also for statics) as there's no longer any need to lint these
situations. Furthermore a good number of tests were updated now that
symbol visibility has been changed.

Closes #54135
2018-10-06 13:57:30 -07:00
Matthias Krüger
22d37b53af submodules: update clippy to 32b1d1fc15 to fix tests. 2018-10-06 08:39:46 +02:00
Oliver S̶c̶h̶n̶e̶i̶d̶e̶r Scherer
54c416d841
Add features to the workspace hack 2018-10-04 12:40:04 +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
Manish Goregaokar
b8a67f1477 Update clippy 2018-10-02 11:11:35 +02:00
Ralf Jung
54b303ace4 update miri 2018-09-29 19:43:15 +02:00
kennytm
3861591946
Rollup merge of #54645 - tromey:android-gdb-version, r=alexcrichton
Compute Android gdb version in compiletest

compiletest has special code for running gdb for Android targets.  In
particular it computes a different path to gdb.  However, this gdb is
not used for the version test, which results in some tests being run
when they should not be.  You can see this in #54004.

This patch moves the special case to analyze_gdb and a new helper
function to decide whether the case applies.  This causes the version
check to work properly.

Note that the bulk of the runtest.rs change is just reindentation
caused by moving from a "match" to an "if" -- but there is a (small)
change buried in there.
2018-09-29 16:43:43 +08:00
kennytm
a6d0599a64
Rollup merge of #54567 - tromey:paths-in-stamp-hashes, r=Mark-Simulacrum
Include path in stamp hash for debuginfo tests

The debuginfo tests are exposed to the environment in a couple of
ways: the path to the gdb executable matters, as does the Python path
used when loading lldb.

This patch incorporates these paths into the hash that is written to
the stamp file, so that changing the path will cause the tests to be
re-run.
2018-09-29 13:21:12 +08: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
Tom Tromey
e545dc9e2c Compute Android gdb version in compiletest
compiletest has special code for running gdb for Android targets.  In
particular it computes a different path to gdb.  However, this gdb is
not used for the version test, which results in some tests being run
when they should not be.  You can see this in #54004.

This patch moves the special case to analyze_gdb and a new helper
function to decide whether the case applies.  This causes the version
check to work properly.

Note that the bulk of the runtest.rs change is just reindentation
caused by moving from a "match" to an "if" -- but there is a (small)
change buried in there.
2018-09-28 10:32:59 -06:00
Igor Matuszewski
632f3b144e Fix RLS toolstate after #54356 merge 2018-09-28 17:48:45 +02:00
bors
c4501a0f1d Auto merge of #52319 - tinco:issue_12590, r=pnkfelix
Track whether module declarations are inline (fixes #12590)

To track whether module declarations are inline I added a field `inline: bool` to `ast::Mod`. The main use case is for pretty to know whether it should render the items associated with the module, but perhaps there are use cases for this information to not be forgotten in the AST.
2018-09-27 09:51:12 +00:00
Matthias Krüger
45f45e53a5 update clippy submodule to a72e786c
Fixes clippy build.
2018-09-26 19:17:11 +02:00
Nick Cameron
90701935b3 Update rustfmt and RLS 2018-09-26 09:46:06 +12:00
Tom Tromey
e6ea19d7bd Include path in stamp hash for debuginfo tests
The debuginfo tests are exposed to the environment in a couple of
ways: the path to the gdb executable matters, as does the Python path
used when loading lldb.

This patch incorporates these paths into the hash that is written to
the stamp file, so that changing the path will cause the tests to be
re-run.
2018-09-25 12:27:09 -06:00
Matthias Krüger
500352f5bc update rls to 32d457717ce37babef199fe4984b1e20d4e108d4 2018-09-23 02:19:57 +02:00
Eduard-Mihai Burtescu
fa2c246384 Stabilize crate_in_paths, extern_absolute_paths and extern_prelude on all editions. 2018-09-22 09:26:40 +03:00
bors
c97b60ff3f Auto merge of #54334 - steveklabnik:update-cargo, r=alexcrichton
update cargo

This pulls in https://github.com/rust-lang/cargo/pull/6052, which is needed for the edition preview, and will be backported to beta as well.
2018-09-22 02:18:17 +00: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
Felix S. Klock II
23e7e78209 Added comment above Mode::RunPass noting that it now behaves like Mode::Ui. 2018-09-21 16:21:40 +02:00
Felix S. Klock II
1eb8690cf3 Make the // skip-codegen property apply to ui tests too. 2018-09-21 16:21:40 +02:00
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