Commit Graph

99642 Commits

Author SHA1 Message Date
Mazdak Farrokhzad
55df97c394
Rollup merge of #64688 - rust-lang:clarify-tidy-since, r=alexreg
Clarify the "since" tidy check

r? @pietroalbini

cc @alexreg
2019-09-23 00:36:41 +02:00
Mazdak Farrokhzad
78d715fe14
Rollup merge of #64679 - skinny121:const-infer, r=varkor
Infer consts more consistently

Moved some duplicated logic in `TypeRelation` methods into `super_combined_consts`. Before some `TypeRelation`s like `Lub` wasn't using `replace_if_possible`, meaning some inference types were staying around longer than they should be.

Fixes https://github.com/rust-lang/rust/issues/64519

r? @varkor
2019-09-23 00:36:40 +02:00
Mazdak Farrokhzad
091b7c3896
Rollup merge of #64677 - tshepang:outdated, r=Mark-Simulacrum
remove outdated comment
2019-09-23 00:36:38 +02:00
Mazdak Farrokhzad
cb449d26ee
Rollup merge of #64676 - estebank:assoc-type-bound-in-generic, r=petrochenkov
Parse assoc type bounds in generic params and provide custom diagnostic

Fix #26271.
2019-09-23 00:36:37 +02:00
Mazdak Farrokhzad
b66e7323e6
Rollup merge of #64674 - estebank:knock-down-the-wall, r=Centril
Propagate `types.err` in locals further to avoid spurious knock-down errors

Fix #33575, fix #44504.
2019-09-23 00:36:36 +02:00
Mazdak Farrokhzad
da58e11d02
Rollup merge of #64670 - Mark-Simulacrum:ext-build-simplify, r=petrochenkov
Cleanup syntax::ext::build

I suspect most of this code could be inlined but I only removed the bits where the inlining didn't really hurt readability (i.e., method call -> function call) or the completely unused code.
2019-09-23 00:36:34 +02:00
Mazdak Farrokhzad
7894bc82d7
Rollup merge of #64294 - wchargin:wchargin-stdio-piped-docs, r=Dylan-DPC
Fix `Stdio::piped` example code and lint

Summary:
Invoking `rev` does not add a trailing newline when none is present in
the input (at least on my Debian). Nearby examples use `echo` rather
than `rev`, which probably explains the source of the discrepancy.

Also, a `mut` qualifier is unused.

Test Plan:
Copy the code block into <https://play.rust-lang.org> with a `fn main`
wrapper, and run it. Note that it compiles and runs cleanly; prior to
this commit, it would emit an `unused_mut` warning and then panic.

wchargin-branch: stdio-piped-docs
2019-09-23 00:36:33 +02:00
bors
c0b7e71bec Auto merge of #64151 - estebank:binding-error, r=varkor
On obligation errors point at the unfulfilled binding when possible

CC #42855, #64130, #64135. Fix #61860.
2019-09-22 22:34:22 +00:00
Jakob Schikowski
d91b965664 libtest: Make --report-time an unstable option 2019-09-22 22:20:30 +02:00
Esteban Küber
ff75124a37 fix nll tests 2019-09-22 11:54:38 -07:00
bors
1dd1884891 Auto merge of #64604 - lzutao:clippyup, r=oli-obk
Update clippy and rls

r? @oli-obk cc @Manishearth
2019-09-22 18:33:14 +00:00
Esteban Küber
7cef8b3495 ignore-x86 instead of ignore-musl 2019-09-22 11:33:13 -07:00
Esteban Küber
3ea0d10979 hack to avoid incorrect suggestion 2019-09-22 11:33:13 -07:00
Esteban Küber
d201e278ba review comments 2019-09-22 11:33:13 -07:00
Esteban Küber
4be51c879e Point at type param when it's cause of unfulfilled obligation 2019-09-22 11:33:13 -07:00
Esteban Küber
4e0437ee8e Fix rebase 2019-09-22 11:33:13 -07:00
Esteban Küber
f81734bcaa ignore musl target in tests to avoid issues with output differences 2019-09-22 11:33:13 -07:00
Esteban Küber
b21408527a review comments 2019-09-22 11:33:12 -07:00
Esteban Küber
c9d05aa9ce Point at correct span for parenthesized types 2019-09-22 11:33:12 -07:00
Esteban Küber
b370c111fd On obligation errors point at the unfulfilled binding when possible 2019-09-22 11:33:12 -07:00
Aleksey Kladov
81fe85710d make mbe::TokenTree private to module 2019-09-22 20:38:02 +03:00
Aleksey Kladov
983569732d push TokenTree::parse down 2019-09-22 20:38:02 +03:00
Aleksey Kladov
9fd75f5287 pull mbe token tree definition up 2019-09-22 20:37:59 +03:00
Aleksey Kladov
636b3543c2 docstring for mbe module 2019-09-22 20:36:35 +03:00
Aleksey Kladov
e30c5166db move mbe module to a separate file 2019-09-22 20:30:03 +03:00
Aleksey Kladov
49f849cdb7 rename tt -> mbe, part 2 2019-09-22 20:30:00 +03:00
Aleksey Kladov
827a5b2ea8 rename libsyntax::ext::tt to mbe
mbe stands for macro-by-example
2019-09-22 20:29:34 +03:00
Aleksey Kladov
645cdca9ba reduce visibility of a bunch of stuff in ext::tt 2019-09-22 20:29:31 +03:00
Mazdak Farrokhzad
ad4787a992
Clarify the "since" tidy check 2019-09-22 17:18:45 +02:00
Lzu Tao
d06de5d850 Update rls to fix build error 2019-09-22 15:02:12 +00:00
Lzu Tao
bbce971bf7 Update clippy 2019-09-22 15:02:12 +00:00
bors
4ff32c07da Auto merge of #64669 - estebank:unreachable, r=Centril
Use span label instead of note in unreachable lint

Fix #64636.
2019-09-22 06:33:01 +00:00
ben
3f2855e4a6 Infer consts consistently. Moved some logic into super_combined_consts,
also removed some duplicated logic from TypeRelation methods.
2019-09-22 17:24:09 +12:00
bors
ef906d0e3c Auto merge of #64666 - Centril:rollup-tp98vlr, r=Centril
Rollup of 9 pull requests

Successful merges:

 - #63907 (Add explanation to type mismatch involving type params and assoc types)
 - #64615 (rustbuild: Turn down compression on exe installers)
 - #64617 (rustbuild: Turn down compression on msi installers)
 - #64618 (rustbuild: Improve output of `dist` step)
 - #64619 (Fixes #63962. Hint about missing tuple parentheses in patterns)
 - #64634 (Update to LLVM 9.0.0)
 - #64635 (Allow using fn pointers in const fn with unleash miri)
 - #64660 (unify errors for tuple/struct variants)
 - #64664 (fully remove AstBuilder)

Failed merges:

r? @ghost
2019-09-22 02:44:28 +00:00
Esteban Küber
0f2f16db53 review comments: wording 2019-09-21 18:57:37 -07:00
Esteban Küber
daed674815 review comments 2019-09-21 17:28:07 -07:00
Tshepang Lekhonkhobe
c3d791740f remove outdated comment 2019-09-22 02:23:41 +02:00
Esteban Küber
60560bc2a2 Parse assoc type bounds in generic params and provide custom diagnostic 2019-09-21 17:11:09 -07:00
Esteban Küber
9991d548c7 review comments 2019-09-21 16:34:16 -07:00
Esteban Küber
3e6b84474d Propagate types.err in locals further to avoid spurious knock-down errors 2019-09-21 16:31:27 -07:00
Mark Rousskov
8417ac67c3 Inline attribute constructors 2019-09-21 16:14:10 -04:00
Mark Rousskov
e41aa8c0d0 Inline ty_infer 2019-09-21 16:14:10 -04:00
Mark Rousskov
2aa9d29c6a Remove unused code 2019-09-21 16:14:10 -04:00
Esteban Küber
ea70fb7567 Do not trigger unreachable lint in async body and Use span labels 2019-09-21 13:04:04 -07:00
Mazdak Farrokhzad
f0e69ffb8d
Rollup merge of #64664 - matklad:remove-ast-builder, r=Mark-Simulacrum
fully remove AstBuilder

The mentioned Cargo test is fixed in https://github.com/rust-lang/cargo/pull/7210

I think this can be removed now?
2019-09-21 21:24:22 +02:00
Mazdak Farrokhzad
7eac55518a
Rollup merge of #64660 - guanqun:unify-errors-for-tuple-struct, r=estebank
unify errors for tuple/struct variants

fix #63983
2019-09-21 21:24:20 +02:00
Mazdak Farrokhzad
25bdd76a54
Rollup merge of #64635 - gnzlbg:const_fn_ptr, r=oli-obk
Allow using fn pointers in const fn with unleash miri

This allows using function pointers in const fns  when `-Zunleash-the-miri-within-you` is enabled.

If the call to the `const fn` happens in a `const`-context, the function pointer is required to point to a `const fn`:

```rust
fn non_const_fn() -> i32 { 42 }
const fn const_fn() -> i32 { 42 }
const fn foo(x: fn() -> i32) -> i32 { x() }

let x: i32 = foo(non_const_fn_ptr); // OK
let y: i32 = foo(const_fn_ptr); // OK
const X: i32 = foo(non_const_fn_ptr); // ERROR: `non_const_fn` is not `const fn`
const Y: i32 = foo(const_fn_ptr); // OK
```

r? @oli-obk
2019-09-21 21:24:19 +02:00
Mazdak Farrokhzad
05d7ae25bf
Rollup merge of #64634 - cuviper:llvm-9.0.0, r=alexcrichton
Update to LLVM 9.0.0
2019-09-21 21:24:17 +02:00
Mazdak Farrokhzad
b21ec22402
Rollup merge of #64619 - sam09:fix-63962, r=Centril
Fixes #63962. Hint about missing tuple parentheses in patterns
2019-09-21 21:24:16 +02:00
Mazdak Farrokhzad
ef8630381a
Rollup merge of #64618 - alexcrichton:improve-dist-output, r=Mark-Simulacrum
rustbuild: Improve output of `dist` step

* Pass `/Q` to `iscc` on Windows to supress the thousands of lines of
  output about compressing documentation.
* Print out what's happening before long steps
* Use `timeit` to print out timing information for long-running
  installer assemblies.
* Try to scope output of `Dist ...` to not also encompass actual build steps
2019-09-21 21:24:15 +02:00