Commit graph

21441 commits

Author SHA1 Message Date
Felix S. Klock II
5fe0851548 Allow more lints, mainly overflowing_literals for cases that only arose on 32-bit. 2018-09-06 13:00:26 +02:00
Felix S. Klock II
dc124e4d0b Add #![allow(stable_features)] to ease review.
That is, opting to ignore stable `#![feature(..)]`, under my theory
that a reviewer would prefer as much stuff to be bucketed under "ah
another `#![allow(..)]` here." as possible.
2018-09-06 13:00:26 +02:00
Felix S. Klock II
f97eea1c10 Add .stderr file for test that appears to trigger a lint that cannot be silenced. 2018-09-06 13:00:26 +02:00
Felix S. Klock II
2bce9b031f Add .stdout file for test of log_syntax! and trace_macros!. 2018-09-06 13:00:26 +02:00
Felix S. Klock II
18a77ae4ab Allow uses of #[unsafe_destructor_blind_to_params]. Should be ported to #[may_dangle].
See rust-lang/rust#34761.
2018-09-06 13:00:26 +02:00
Felix S. Klock II
4a9e55e05a Allow illegal_floating_point_literal_pattern. These will need to be updated at some point.
Discussion can be found on rust-lang/rust#41620.
2018-09-06 13:00:26 +02:00
Felix S. Klock II
dc7685e958 Update line numbers to reflect added lines at beginning of tests. 2018-09-06 13:00:26 +02:00
Felix S. Klock II
90412f149c Add .stderr files for shadowed labels where the point of the test is to test such cases. 2018-09-06 13:00:26 +02:00
Felix S. Klock II
f78b9add44 Alpha-rename label to avoid the shadowing lint (which cannot be silenced). 2018-09-06 13:00:26 +02:00
Felix S. Klock II
175d7f4e48 Add .stderr file for test where there are conflicting repr hints.
See rust-lang/rust#53857.
2018-09-06 13:00:26 +02:00
Felix S. Klock II
d18b3bf104 Add #![allow(improper_ctypes)] to extern-pass-empty.rs; note this test seems bogus.
that is, I suspect it should be retired because it is testing behavior
(namely a `#[repr(C)] struct Empty;`) that, if I understand correctly,
is undefined.

See also rust-lang/rust#53859.
2018-09-06 13:00:26 +02:00
Felix S. Klock II
8bcf37d949 Add #[allow(improper_ctypes)] to slew of cases that need e.g. repr(C).
See also rust-lang/rust#53858.
2018-09-06 13:00:26 +02:00
Felix S. Klock II
e462c1adc5 Add #![allow(..)] for a slew of lints of migrated run-pass tests, to silence stderr output. 2018-09-06 13:00:26 +02:00
Felix S. Klock II
90241dfba3 Remove references to a collection of unknown lints. 2018-09-06 13:00:26 +02:00
Felix S. Klock II
06f36a04a4 Move a bunch of auxiliary support files into ui/run-pass/**/auxiliary. 2018-09-06 13:00:26 +02:00
Felix S. Klock II
0909e0bf70 Add // run-pass annotations to all the tests under ui/run-pass/.
(I may have accidentally added it to some auxilliary crates as well;
my emacs-macro-based methodology was pretty crude.)
2018-09-06 13:00:26 +02:00
Felix S. Klock II
7834c22848 Migrated slew of run-pass tests to various subdirectories of ui/run-pass/. 2018-09-06 13:00:26 +02:00
bors
35a5541fd9 Auto merge of #53707 - eddyb:phantom-waffles, r=oli-obk
rustc_typeck: turn `where Type:,` into a WF(Type) predicate, instead of ignoring it.

Fixes #53696, assuming crater doesn't catch anyone using this syntax already.

Allowing an empty list of bounds in the grammar was done for the benefit of macro authors, most of which would *probably* be using it for bounds on type parameters, which are always WF.

r? @nikomatsakis cc @petrochenkov
2018-09-06 09:32:23 +00:00
bors
20ca02569a Auto merge of #53721 - arielb1:exhaustively-unpun, r=nikomatsakis
fix `is_non_exhaustive` confusion between structs and enums

Structs and enums can both be non-exhaustive, with a very different
meaning. This PR splits `is_non_exhaustive` to 2 separate functions - 1
for structs, and another for enums, and fixes the places that got the
usage confused.

Fixes #53549.

r? @eddyb
2018-09-06 06:42:19 +00:00
Vadim Petrochenkov
a6adeae104 Validate syntax of --cfg command line arguments 2018-09-06 02:04:04 +03:00
Vadim Petrochenkov
b0a05c5981 Validate syntax of cfg attributes 2018-09-06 01:18:30 +03:00
Esteban Küber
bebecf850a reword label as per review 2018-09-05 09:56:01 -07:00
Esteban Küber
941b2e32ad slight rewording of labels 2018-09-05 08:39:50 -07:00
Esteban Küber
3192d3dc0c Change wording of unclosed delimiter label 2018-09-05 07:33:29 -07:00
Esteban Küber
b2d2d83723 Fix existing test 2018-09-05 07:03:02 -07:00
Michael Woerister
24093a6bdb Allow for opting out of ThinLTO and clean up LTO related cli flag handling. 2018-09-05 12:52:17 +02:00
Esteban Küber
008aa5a24e Provide more context for unenclosed delimiters
* When encountering EOF, point at the last opening brace that does not
   have the same indentation level as its close delimiter.
 * When encountering the wrong type of close delimiter, point at the
   likely correct open delimiter to give a better idea of what went
   wrong.
2018-09-05 03:43:24 -07:00
Esteban Küber
5238b523c3 Reword un-closed delimiter label 2018-09-05 03:43:24 -07:00
Esteban Küber
d7a74be09b Fix incorrect outer function type parameter message 2018-09-05 03:34:16 -07:00
bors
b0297f3043 Auto merge of #53867 - cwndrws:json-test-formatter-test-count-as-num, r=nrc
Make json test output formatter represent "test_count" as num

fixes #53866
2018-09-05 09:57:56 +00:00
John Renner
0593dc7e3c Move #[test_case] to a syntax extension 2018-09-04 22:33:23 -07:00
John Renner
e5ed105716 Document #[test_case] and #![test_runner] 2018-09-04 22:33:11 -07:00
John Renner
08ea5b7c78 Fix #[test] shadowing in macro_prelude 2018-09-04 22:33:10 -07:00
John Renner
9b27de41d4 Introduce Custom Test Frameworks 2018-09-04 22:33:00 -07:00
Felix S. Klock II
6bde4298d8 Minimized (and then greatly expanded) test of failure cases from rust-lang/rust#52934. 2018-09-04 16:22:22 +02:00
Matthew Jasper
faf80ad397 remove base_place 2018-09-03 21:50:03 +01:00
Bruno Dutra
806ecabab1 Add regression test for #52475 2018-09-03 20:02:35 +02:00
bors
cd5c26f0eb Auto merge of #53697 - Cyres:const-fn-int-ops, r=oli-obk
Add more const int ops

r? @oli-obk

Tracking Issue: #53718

list of `const fn`s in this PR:

- `feature = const_int_rotate`
  - `rotate_left`
  - `rotate_right`
- `feature = const_int_wrapping`
  - `wrapping_add`
  - `wrapping_sub`
  - `wrapping_mul`
  - `wrapping_shl`
  - `wrapping_shr`
- `feature = const_int_overflowing`
  - `overflowing_add`
  - `overflowing_sub`
  - `overflowing_mul`
  - `overflowing_shl`
  - `overflowing_shr`
- `feature = const_int_sign`
  - `is_positive`
  - `is_negative`
- `feature = const_int_conversion`
  - `reverse_bits`
  - `to_le_bytes`
  - `to_ne_bytes`
  - `from_be_bytes`
  - `from_le_bytes`
  - `from_ne_bytes`
  - `reverse_bits`
2018-09-03 16:31:34 +00:00
Tim Diekmann
4811e5b6c7
Add missing brace 2018-09-03 15:26:27 +02:00
Cyres
beadf75ad0 Add ident function to the rest of the tests 2018-09-03 15:25:06 +02:00
Tim Diekmann
e54c5a9e48
Wrap rhs in ident function 2018-09-03 15:01:04 +02:00
bors
591a17d3d9 Auto merge of #53831 - TheDarkula:pointer-check, r=oli-obk
Added pointer checking to sanity checks

r? @oli-obk
2018-09-03 11:31:15 +00:00
bors
f3bb23191c Auto merge of #53865 - zilbuz:issue-52768, r=pnkfelix
Remove 'not reporting regions error due to nll' warning

Fix #52768
2018-09-03 08:56:42 +00:00
David Wood
8c92cbe90e
Moved let-chain warning/error to ast_validation and changed to unconditional error. 2018-09-02 10:54:28 +02:00
bors
3480ac2a80 Auto merge of #53887 - flip1995:tool_lints, r=Manishearth
Fix of bug introduced by #53762 (tool_lints)

Before implementing backwards compat for tool lints, the `Tool` case when parsing cmdline lints was unreachable. This changed with #53762.

This fix is needed for rls test-pass. (@nrc)

r? @Manishearth
2018-09-02 02:10:33 +00:00
bors
a1a8c444f9 Auto merge of #53842 - estebank:various, r=petrochenkov
Various small diagnostic and code clean up

 - Point at def span on incorrect `panic` or `oom` function
 - Use structured suggestion instead of note for `+=` that can be performed on a dereference of the left binding
 - Small code formatting cleanup
2018-09-01 23:34:14 +00:00
Manish Goregaokar
daa43643b0 deprcated -> deprecated 2018-09-01 21:45:44 +05:30
flip1995
6a317be5c8
Add tests for cmdline tool lints 2018-09-01 18:06:36 +02:00
bors
839d99c861 Auto merge of #53884 - kennytm:rollup, r=kennytm
Rollup of 9 pull requests

Successful merges:

 - #53076 (set cfg(rustdoc) when rustdoc is running on a crate)
 - #53622 (cleanup: Add main functions to some UI tests)
 - #53769 (Also link Clippy repo in the CONTRIBUTING.md file)
 - #53774 (Add rust-gdbgui script.)
 - #53781 (bench: libcore: fix build failure of any.rs benchmark (use "dyn Any"))
 - #53782 (Make Arc cloning mechanics clearer in module docs)
 - #53790 (Add regression test for issue #52060)
 - #53801 (Prevent duplicated impl on foreign types)
 - #53850 (Nuke the `const_to_allocation` query)
2018-09-01 15:48:21 +00:00
kennytm
d0f8cf32b3
Rollup merge of #53076 - QuietMisdreavus:cfg-rustdoc, r=GuillaumeGomez
set cfg(rustdoc) when rustdoc is running on a crate

When using `#[doc(cfg)]` to document platform-specific items, it's a little cumbersome to get all the platforms' items to appear all at once. For example, the standard library adds `--cfg dox` to rustdoc's command line whenever it builds docs, and the documentation for `#![feature(doc_cfg)]` suggests using a Cargo feature to approximate the same thing. This is a little awkward, because you always need to remember to set `--features dox` whenever you build documentation.

This PR proposes making rustdoc set `#[cfg(rustdoc)]` whenever it runs on a crate, to provide an officially-sanctioned version of this that is set automatically. This way, there's a standardized way to declare that a certain version of an item is specifically when building docs.

To try to prevent the spread of this feature from happening too quickly, this PR also restricts the use of this flag to whenever `#![feature(doc_cfg)]` is active. I'm sure there are other uses for this, but right now i'm tying it to this feature. (If it makes more sense to give this its own feature, i can easily do that.)
2018-09-01 23:18:41 +08:00