bors
d1c2cbf90a
Auto merge of #55999 - alexcrichton:update-cargo, r=nrc
...
Update Cargo submodule
Brings in some fixes and stabilizations!
2018-11-18 14:33:03 +00:00
Vadim Petrochenkov
38025e0dca
Fix rebase
2018-11-18 14:41:06 +03:00
Vadim Petrochenkov
139d109241
Add a couple more tests + address review comments
2018-11-18 13:58:40 +03:00
Vadim Petrochenkov
59464709f7
resolve: Refactor away DeterminacyExt
2018-11-18 13:58:39 +03:00
Vadim Petrochenkov
a5f9bd02b1
resolve: Future-proof against imports referring to local variables and generic parameters
2018-11-18 13:58:39 +03:00
Vadim Petrochenkov
4fc3c13e32
resolve: Avoid sentence breaks in diagnostics
2018-11-18 13:58:36 +03:00
Vadim Petrochenkov
f492e9421f
resolve: Support resolving macros without leaving traces
2018-11-18 13:57:37 +03:00
Vadim Petrochenkov
0e8a97f8e7
resolve: Avoid marking extern crate
items as used in certain cases
2018-11-18 13:57:04 +03:00
Vadim Petrochenkov
8e88c3470a
resolve: Reintroduce feature gate for uniform paths in imports
2018-11-18 13:57:04 +03:00
Vadim Petrochenkov
a38f903114
Fix ICEs from imports of items not defined in modules
2018-11-18 13:57:03 +03:00
Vadim Petrochenkov
cfd762954b
resolve: Tweak some articles in ambiguity diagnostics
2018-11-18 13:57:03 +03:00
Vadim Petrochenkov
cfe81559ee
resolve: Recover "did you mean" suggestions in imports
2018-11-18 13:57:01 +03:00
Vadim Petrochenkov
4c5d822a8b
resolve: Check resolution consistency for import paths and multi-segment macro paths
2018-11-18 13:55:58 +03:00
Vadim Petrochenkov
07af4ec7a2
resolve: Resolve single-segment imports using in-scope resolution on 2018 edition
2018-11-18 13:51:43 +03:00
Vadim Petrochenkov
1cfd08c0c4
resolve: More precise determinacy tracking during import/macro resolution
2018-11-18 13:51:42 +03:00
Vadim Petrochenkov
f0ea1c6f1e
resolve: Improve diagnostics for resolution ambiguities
2018-11-18 13:51:40 +03:00
Vadim Petrochenkov
9d7d9ada6d
resolve: Simplify ambiguity checking for built-in attributes
2018-11-18 13:51:17 +03:00
Vadim Petrochenkov
e6739fe274
resolve: Resolve multi-segment imports using in-scope resolution on 2018 edition
2018-11-18 13:51:13 +03:00
Vadim Petrochenkov
67feeebfad
resolve: Stop generating uniform path canaries
2018-11-18 13:49:31 +03:00
Scott McMurray
cdb1a799f8
Add VecDeque::resize_with
2018-11-17 22:48:29 -08:00
Alex Crichton
7a99b6db15
std: Add debugging for a failing test on appveyor
...
I'm not sure why this is failing, so let's hopefully get some more
information to help investigation!
2018-11-17 19:38:53 -08:00
Igor Matuszewski
5fc63ce480
docs: Add missing backtick in object_safety.rs docs
...
Closes #56019 .
2018-11-17 17:40:58 +01:00
bors
f37247f885
Auto merge of #56003 - nikomatsakis:issue-54467-infer-outlives-bounds-and-trait-objects, r=eddyb
...
do not propagate inferred bounds on trait objects if they involve `Self`
Fixes #54467 , which is a Rust 2018 Release blocking issue.
r? @eddyb
2018-11-17 13:19:42 +00:00
giacomo
8e13e433c6
tidy check fix
2018-11-17 12:28:04 +01:00
giacomo
2b7c3fb725
add test for #[test] attribute only allowed on non associated functions
2018-11-17 11:39:58 +01:00
Ralf Jung
25d46f3091
add comment explaining why what we do is legal
2018-11-17 10:20:28 +01:00
Alex Crichton
01127ca666
Update Cargo submodule
...
Brings in some fixes and stabilizations!
2018-11-17 00:53:31 -08:00
Ralf Jung
a7b312f825
erase the tag on casts involving (raw) pointers
2018-11-17 09:08:30 +01:00
Sergio Benitez
78eb516dda
Ignore non-semantic tokens for 'probably_eq' streams.
2018-11-16 23:37:23 -08:00
bors
f6e9485bfc
Auto merge of #55627 - sunfishcode:cg-llvm-gen, r=nikomatsakis
...
rustc_codegen_llvm: traitification of LLVM-specific CodegenCx and Builder methods
This PR is the continuation of #54012 and earlier PRs, in the grand plan of #45274 to allow for multiple codegen backends.
High-level summary: interpose a set of traits between Rust's codegen logic and the LLVM APIs, allowing another backend to implement the traits and share most of the codegen logic. These traits are currently somewhat LLVM-specific, but once this refactoring is in place, they can evolve to be more general.
See [this README](756f84d7ce/src/librustc_codegen_ssa/README.md
) for a writeup on the current trait organization.
2018-11-17 04:10:52 +00:00
Ralf Jung
41434e001b
avoid shared ref in UnsafeCell::get
2018-11-16 22:17:26 +01:00
bors
ee821736cc
Auto merge of #55936 - nrc:save-rename, r=eddyb
...
save-analysis: be even more aggressive about ignorning macro-generated defs
r? @eddyb
2018-11-16 21:11:24 +00:00
Ralf Jung
0c0478d57a
adjust remaining tests
2018-11-16 22:04:14 +01:00
Benoît C
c1221e2072
Replace data.clone() by Arc::clone(&data) in mutex doc.
...
Arc::clone(&from) is considered as more idiomatic because it conveys more explicitly the meaning of the code.
2018-11-16 15:34:12 -05:00
Ralf Jung
303dbccf04
CTFE: dynamically make sure we do not call non-const-fn
2018-11-16 18:05:08 +01:00
Niko Matsakis
6575988d8e
handle trait objects formed from traits with Self::Foo: 'a
clauses
2018-11-16 09:37:33 -05:00
Niko Matsakis
0d744ec6ec
improve debug output related to bound calculation
2018-11-16 09:37:32 -05:00
Eduard-Mihai Burtescu
756f84d7ce
[eddyb] rustc_codegen_llvm: remove unused parametrization of CodegenCx
and Builder
over Value
s.
2018-11-16 15:08:18 +02:00
Eduard-Mihai Burtescu
0b569249c8
[eddyb] rustc_codegen_ssa: rename interfaces
to traits
.
2018-11-16 15:08:18 +02:00
Eduard-Mihai Burtescu
d1410ada92
[eddyb] rustc_codegen_ssa: avoid a Clone
bound on TargetMachine
.
2018-11-16 15:08:18 +02:00
Eduard-Mihai Burtescu
47c84c4234
[eddyb] rustc_codegen_llvm: remove unnecessary 'a
from LlvmCodegenBackend
impls.
2018-11-16 15:08:18 +02:00
Eduard-Mihai Burtescu
9f49a2626e
[eddyb] rustc_codegen_utils: remove extraneous #![allow(dead_code)]
.
2018-11-16 15:08:18 +02:00
Eduard-Mihai Burtescu
9bb6663431
[eddyb] rustc_codegen_ssa: handle LLVM unsafety correctly.
2018-11-16 15:08:18 +02:00
Denis Merigoux
bf7f8cd3fc
Added README explaining the refactoring
2018-11-16 15:08:18 +02:00
Denis Merigoux
b9e5cf99a9
Separating the back folder between backend-agnostic and LLVM-specific code
2018-11-16 15:08:18 +02:00
Denis Merigoux
b25b804013
Added default impl for DerivedTypeMethods + empty impl for Cranelift BaseTypeMethods
2018-11-16 15:08:18 +02:00
Denis Merigoux
54dd3a47fd
All Builder methods now take &mut self instead of &self
2018-11-16 15:08:18 +02:00
Denis Merigoux
1ebdfbb026
Added some docs + start to &mut self builder methods
2018-11-16 15:08:18 +02:00
Denis Merigoux
015e4441f5
Finished moving backend-agnostic code to rustc_codegen_ssa
2018-11-16 15:08:18 +02:00
Denis Merigoux
c0a428ee70
Great separation of librustc_codegen_llvm: librustc_codegen_ssa compiles
2018-11-16 15:07:24 +02:00