92784 Commits

Author SHA1 Message Date
varkor
541de81f8e Create ShallowResolver
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:11:20 +01:00
varkor
1369132afa Add a test for const args that cannot be inferred
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:11:20 +01:00
varkor
a188850ded Add a test for incorrect numbers of const args 2019-05-01 23:11:19 +01:00
varkor
16d6ee3952 Fold const in writeback 2019-05-01 23:11:19 +01:00
varkor
c7deb5bdc2 Add a test for const arguments 2019-05-01 23:11:19 +01:00
varkor
a29eca5d82 Fix issue with const params in operand.rs 2019-05-01 23:11:19 +01:00
varkor
beb2f84b31 Resolve FIXME in probe.rs 2019-05-01 23:11:19 +01:00
varkor
388f823c03 Correct name of constrained_generic_params alias 2019-05-01 23:11:19 +01:00
varkor
d8b1ddba9b Fix unused variable warning 2019-05-01 23:11:19 +01:00
varkor
b872e63585 Fix known-known const unification case 2019-05-01 23:11:19 +01:00
varkor
97c0c6653b Remove spurious assertion 2019-05-01 23:11:19 +01:00
varkor
67176f751b Add const-types test 2019-05-01 23:11:19 +01:00
varkor
5cf45bc27a Fix rebase issue 2019-05-01 23:11:19 +01:00
varkor
972e254106 Implement const generics for InferenceFudger 2019-05-01 23:11:19 +01:00
varkor
f241693662 Fix missing parenthesis 2019-05-01 23:11:19 +01:00
varkor
d8b9387ace Take ConstValue::Placeholder into account in new locations 2019-05-01 23:11:19 +01:00
varkor
fc16b0a147 Fix rebase from LazyConst removal 2019-05-01 23:11:19 +01:00
varkor
c888af52be Replace ConstVariableTable with UnificationTable 2019-05-01 23:10:58 +01:00
varkor
2308d2d68a Handle ConstValue::Placeholder in canonicalizer 2019-05-01 23:10:57 +01:00
varkor
e70797b575 Add PlaceholderConst 2019-05-01 23:10:57 +01:00
varkor
f5712d2de0 Add ConstValue::Placeholder 2019-05-01 23:10:57 +01:00
varkor
245a474ab7 Inline ConstError into TypeError 2019-05-01 23:10:57 +01:00
varkor
cf1a719c19 Implement fold_const for BoundVarReplacer 2019-05-01 23:10:57 +01:00
Gabriel Smith
fa394c2283 impl fold_const for Shifter
Signed-off-by: Gabriel Smith <ga29smith@gmail.com>
2019-05-01 23:10:57 +01:00
Gabriel Smith
57d3a5a32d impl visit_const for HasEscapingVarsVisitor
Signed-off-by: Gabriel Smith <ga29smith@gmail.com>
2019-05-01 23:10:57 +01:00
Gabriel Smith
c13aa09d49 impl fold_const for TypeFreshener
Signed-off-by: Gabriel Smith <ga29smith@gmail.com>
2019-05-01 23:10:57 +01:00
Gabriel Smith
e965b75603 impl mk_const_infer
Signed-off-by: Gabriel Smith <ga29smith@gmail.com>
2019-05-01 23:10:57 +01:00
Gabriel Smith
bd2fa222c0 Rename mk_infer to mk_ty_infer
Signed-off-by: Gabriel Smith <ga29smith@gmail.com>
2019-05-01 23:10:57 +01:00
Gabriel Smith
7bf175f30c impl fold_const for RegionFudger
Signed-off-by: Gabriel Smith <ga29smith@gmail.com>
2019-05-01 23:10:57 +01:00
varkor
ef1b2acf12 Remove fold_const override for ReverseMapper
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:57 +01:00
varkor
ed3dae4aca Rename *shallow_resolve to *shallow_resolve_type
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:57 +01:00
varkor
3f675ab038 Drive-by comment fixes
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:57 +01:00
varkor
d113ff8ada Handle generic consts in relate and infer
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:57 +01:00
varkor
69423b3345 Add stubs for fold_const
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:57 +01:00
varkor
bfc39b9b87 Implement TypeRelation::consts
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:57 +01:00
varkor
7d71a1c8a4 Add const generics to unification tables
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:57 +01:00
varkor
b9b9994c72 Define const_unification_error
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:57 +01:00
varkor
05ac3ac575 Define super_combine_consts
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:57 +01:00
varkor
d4e0951fff Add CanonicalVarKind::Const
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:57 +01:00
varkor
14f906f24e Define canonicalize_const_var
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:57 +01:00
varkor
0728b62aca Add ct_err
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:57 +01:00
varkor
d7fdeffafc Add generic consts to BottomUpFolder
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:05 +01:00
varkor
77447deb21 Add const_variable.rs
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:05 +01:00
varkor
2254727480 Add ConstError
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:05 +01:00
varkor
cafa10d96e Define super_relate_consts
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:05 +01:00
varkor
f1c83de1dd Add consts to TypeRelation
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-05-01 23:10:05 +01:00
bors
9b67bd42b7 Auto merge of #60435 - Centril:rollup-aa5lmuw, r=Centril
Rollup of 7 pull requests

Successful merges:

 - #60287 (Use references for variances_of)
 - #60327 (Search for incompatible universes in borrow errors)
 - #60330 (Suggest using an inclusive range instead of an exclusive range when the endpoint overflows by 1)
 - #60366 (build-gcc: Create missing cc symlink)
 - #60369 (Support ZSTs in DispatchFromDyn)
 - #60404 (Implement `BorrowMut<str>` for `String`)
 - #60417 (Rename hir::ExprKind::Use to ::DropTemps and improve docs.)

Failed merges:

r? @ghost
2019-05-01 17:24:11 +00:00
bors
6cc24f2603 Auto merge of #60137 - eddyb:rustdoc-rm-def-ctor-hax, r=petrochenkov
rustdoc: remove def_ctor hack.

~~No longer necessary since we have `describe_def`.~~

Turns out `def_ctor` was used in conjunction with abusing `tcx.type_of(def_id)` working on both type definitions and `impl`s (specifically, of builtin types), but also reimplementing a lot of the logic that `Clean` already provides on `Ty` / `ty::TraitRef`.

The first commit now does the minimal refactor to keep it working, while the second commit contains the rest of the refactor I started (parts of which I'm not sure we need to keep).
2019-05-01 12:21:04 +00:00
bors
47e0803d5c Auto merge of #60195 - varkor:commontypes-to-common, r=eddyb
Split `CommonTypes` into `CommonTypes` and `CommonLifetimes`

The so-called "`CommonTypes`" contains more than just types.

r? @eddyb
2019-05-01 09:32:58 +00:00
Mazdak Farrokhzad
e5b69978c1
Rollup merge of #60417 - Centril:hir-exprkind-use-renamed-to-drop-temps, r=oli-obk
Rename hir::ExprKind::Use to ::DropTemps and improve docs.

Addresses https://github.com/rust-lang/rust/pull/60225#discussion_r279797691.

r? @oli-obk

cc @eddyb @Manishearth
2019-05-01 08:29:16 +02:00