bobtwinkles
d64bd2afc3
Push AllowTwoPhase down to the HAIR level
...
For consistency, use AllowTwoPhase everywhere between the frontend and MIR.
2018-03-28 04:08:03 -04:00
bobtwinkles
96ae0ee382
Use a new type to track if two-phase borrows are allowed
...
Because more type safe is more better, and random boolean parameters everywhere
were not the greatest thing.
2018-03-27 23:48:50 -04:00
bors
a04b88d194
Auto merge of #49079 - oli-obk:cross_miri, r=michaelwoerister
...
Cleanup metadata and incremental cache processing of constants
fixes #49033
fixes #49081
we really need tests for this. do we have any cross compilation tests? I couldn't find any
2018-03-19 10:39:26 +00:00
bors
15add366fa
Auto merge of #49091 - nikomatsakis:issue-49043-ty-infer-hash, r=michaelwoerister
...
extend stable hasher to support `CanonicalTy`
Fixes #49043
r? @michaelwoerister
2018-03-19 05:07:27 +00:00
bors
7c396ebd0b
Auto merge of #48985 - scalexm:lowering, r=nikomatsakis
...
MVP for chalkification
r? @nikomatsakis
2018-03-18 07:35:43 +00:00
bors
5e3ecdce4e
Auto merge of #48917 - petrochenkov:import, r=oli-obk
...
syntax: Make imports in AST closer to the source and cleanup their parsing
This is a continuation of https://github.com/rust-lang/rust/pull/45846 in some sense.
2018-03-18 01:50:52 +00:00
Vadim Petrochenkov
f88162654d
Rename Span::empty to Span::shrink_to_lo, add Span::shrink_to_hi
2018-03-17 22:12:21 +03:00
Vadim Petrochenkov
e5fb13897d
AST: Keep distinction between path and ::path in imports and visibilities
...
Add the root segment for name resolution purposes only
2018-03-17 22:12:21 +03:00
Vadim Petrochenkov
b057c554ab
AST: Make renames in imports closer to the source
...
Fix `unused_import_braces` lint false positive on `use prefix::{self as rename}`
2018-03-17 22:12:21 +03:00
Vadim Petrochenkov
c6c6cf9515
AST/HIR: Clarify what the optional name in extern crate items mean
2018-03-17 22:12:21 +03:00
Vadim Petrochenkov
5d06c890fe
syntax: Make _ an identifier
2018-03-17 22:08:07 +03:00
bors
61b6bf54fd
Auto merge of #49106 - kennytm:rollup, r=kennytm
...
Rollup of 8 pull requests
- Successful merges: #48943 , #48960 , #48983 , #49055 , #49057 , #49077 , #49082 , #49083
- Failed merges:
2018-03-17 11:39:38 +00:00
kennytm
ef9581e757
Rollup merge of #49083 - oli-obk:mopsgeschwindigkeit, r=michaelwoerister
...
Only generate miri backtraces if explicitly requested
fixes #49072
fixes #48888
r? @michaelwoerister
2018-03-17 17:20:49 +08:00
kennytm
c9d06a4a4e
Rollup merge of #48960 - nikomatsakis:issue-48468-dyn-trait-elision, r=cramertj
...
resolve `'_` in `dyn Trait` just like ordinary elision
r? @cramertj
Fixes #48468
2018-03-17 17:20:42 +08:00
bors
c3fd5d0dde
Auto merge of #48904 - Zoxc:code-and-file-maps, r=michaelwoerister
...
Make CodeMap and FileMap thread-safe
r? @michaelwoerister
2018-03-17 08:54:22 +00:00
bors
cf5cc2e41e
Auto merge of #49088 - michaelwoerister:fix-49070, r=nikomatsakis
...
incr.comp.: Make sanity check in try_mark_green() aware of error conditions.
Before this PR, `DepGraph::try_mark_green()` assumed that forcing a query would always set the color of the corresponding dep-node. However, it did not take into account that queries could also fail (e.g. with a cycle error). This PR makes the method handle that condition gracefully.
Fixes #49070 .
r? @nikomatsakis
2018-03-17 00:48:10 +00:00
Niko Matsakis
f02dc74c2c
extend stable hasher to support CanonicalTy
2018-03-16 12:49:37 -04:00
Oliver Schneider
49dac83f84
Cleanup metadata and incremental cache processing of constants
2018-03-16 17:22:37 +01:00
Michael Woerister
ee4a7eba45
incr.comp.: Make sanity check in try_mark_green() aware of error conditions.
2018-03-16 16:19:12 +01:00
bors
3b6412b943
Auto merge of #48896 - alexcrichton:bitcode-in-object, r=michaelwoerister
...
rustc: Enable embedding LLVM bitcode for iOS
This commit updates rustc to embed bitcode in each object file generated by
default when compiling for iOS. This was determined in #35968 as a step
towards better compatibility with the iOS toolchain, so let's give it a spin and
see how it turns out!
Note that this also updates the `cc` dependency which should propagate this
change of embedding bitcode for C dependencies as well.
2018-03-16 13:48:20 +00:00
Oliver Schneider
4133b16036
Only generate miri backtraces if explicitly requested
2018-03-16 11:48:32 +01:00
bors
36b6687318
Auto merge of #49051 - kennytm:rollup, r=kennytm
...
Rollup of 17 pull requests
- Successful merges: #48706 , #48875 , #48892 , #48922 , #48957 , #48959 , #48961 , #48965 , #49007 , #49024 , #49042 , #49050 , #48853 , #48990 , #49037 , #49049 , #48972
- Failed merges:
2018-03-16 00:09:14 +00:00
kennytm
a45b79ddb7
Rollup merge of #48706 - ehuss:main-not-found-in-crate, r=estebank
...
Add crate name to "main function not found" error message.
Fixes #44798 and rust-lang/cargo#4948 .
I was wondering if it might be cleaner to update the ui tests to add a simple `fn main() {}` for the unrelated tests. Let me know if you would prefer that.
2018-03-16 01:49:38 +08:00
bors
3926453944
Auto merge of #47813 - kennytm:stable-incl-range, r=nrc
...
Stabilize inclusive range (`..=`)
Stabilize the followings:
* `inclusive_range` — The `std::ops::RangeInclusive` and `std::ops::RangeInclusiveTo` types, except its fields (tracked by #49022 separately).
* `inclusive_range_syntax` — The `a..=b` and `..=b` expression syntax
* `dotdoteq_in_patterns` — Using `a..=b` in a pattern
cc #28237
r? @rust-lang/lang
2018-03-15 16:00:40 +00:00
bors
ff2d506c2c
Auto merge of #48138 - estebank:issue-45092, r=nikomatsakis
...
Reword E0044 and message for `!Send` types
- Reword E0044 help.
- Change error message for types that don't implement `Send`
CC #45092 , #46678 , #24909 , #33307 .
2018-03-15 13:16:09 +00:00
kennytm
939cfa251a
Keep the fields of RangeInclusive unstable.
2018-03-15 17:01:30 +08:00
kennytm
6399d16cfd
Disallow &a..=b and box a..=b in pattern.
...
They are disallowed because they have different precedence than
expressions. I assume parenthesis in pattern will be soon stabilized and
thus write that as suggestion directly.
2018-03-15 16:58:03 +08:00
kennytm
92d1f8d8e4
Stabilize inclusive_range_syntax language feature.
...
Stabilize the syntax `a..=b` and `..=b`.
2018-03-15 16:58:02 +08:00
kennytm
b5913f2e76
Stabilize inclusive_range library feature.
...
Stabilize std::ops::RangeInclusive and std::ops::RangeInclusiveTo.
2018-03-15 16:58:01 +08:00
Esteban Küber
fe1975448c
Suggest using move when trying to share ...::channel::{Receiver, Sender}
...
Extend `rustc_on_unimplemented` to match on ADT without evaluating type
arguments.
2018-03-14 18:04:20 -07:00
bors
5ebf74851d
Auto merge of #47630 - canndrew:exhaustive-patterns, r=nikomatsakis
...
Stabilise feature(never_type). Introduce feature(exhaustive_patterns)
This stabilizes `!`, removing the feature gate as well as the old defaulting-to-`()` behavior. The pattern exhaustiveness checks which were covered by `feature(never_type)` have been moved behind a new `feature(exhaustive_patterns)` gate.
2018-03-14 23:43:04 +00:00
John Kåre Alsaker
426c51d6ea
Make FileMap thread-safe
2018-03-15 00:43:02 +01:00
Niko Matsakis
f9bf827055
resolve '_ in dyn Trait just like ordinary elision
...
cc #48468
2018-03-14 19:39:28 -04:00
bors
521d91c6be
Auto merge of #49008 - kennytm:rollup, r=kennytm
...
Rollup of 12 pull requests
- Successful merges: #48765 , #48831 , #48840 , #48964 , #48970 , #48971 , #48981 , #48988 , #48991 , #48966 , #48993 , #48874
- Failed merges:
2018-03-14 20:59:09 +00:00
Eric Huss
2f1b34cc15
Add backticks to main not found errors.
2018-03-14 12:23:29 -07:00
Eric Huss
b08e6d305f
Add suggestion where to add main function.
2018-03-14 12:23:29 -07:00
Eric Huss
b4b7ccbd1c
Add crate name to "main function not found" error message.
...
Fixes #44798 and rust-lang/cargo#4948 .
2018-03-14 11:40:13 -07:00
kennytm
6639b60ec6
Rollup merge of #48966 - retep007:hir-fingerprint-optimization, r=michaelwoerister
...
Speed up SVH computation by using Fingerprint::combine()
Fix #47297
2018-03-15 00:15:55 +08:00
kennytm
55e5ba3b81
Rollup merge of #48991 - jsgf:remap-path-prefix, r=estebank
...
Clarify usage message for --remap-path-prefix.
2018-03-15 00:15:54 +08:00
bors
11d9959641
Auto merge of #48864 - oli-obk:miri_incremental_regression, r=eddyb
...
Cache const eval queries
fixes #48846 (I think, still running more perf tests, but tuple-stress stops recomputing any constants)
r? @michaelwoerister
2018-03-14 15:39:59 +00:00
scalexm
e8f3ed5db2
Add documentation
2018-03-14 15:19:17 +01:00
scalexm
2bbd16de13
Move code into librustc_traits
2018-03-14 14:45:30 +01:00
scalexm
04b228c3e2
Address niko's nits
2018-03-14 14:14:33 +01:00
scalexm
1271f0bd25
Add MVP for chalkification
2018-03-14 13:39:58 +01:00
John Kåre Alsaker
cbdf4ec03e
Remove syntax and syntax_pos thread locals
2018-03-14 11:56:01 +01:00
Andrew Cann
b1526ca384
Fixes after rebase
2018-03-14 12:45:14 +08:00
Andrew Cann
00a52a2be3
Fix fallback note
2018-03-14 12:44:52 +08:00
Andrew Cann
5b32211e62
Add note about fallback to !: !Trait error
2018-03-14 12:44:52 +08:00
Andrew Cann
59688e119e
Make coerce_never lint an error
...
Remove the coerce_never lint and make the behaviour an error.
2018-03-14 12:44:51 +08:00
Andrew Cann
a9fc3901b0
stabilise feature(never_type)
...
Replace feature(never_type) with feature(exhaustive_patterns).
feature(exhaustive_patterns) only covers the pattern-exhaustives checks
that used to be covered by feature(never_type)
2018-03-14 12:44:51 +08:00