bors
b58a0061a3
Auto merge of #58903 - estebank:forgetful-delims, r=petrochenkov
...
Always emit unclosed delimiter diagnostics
Fix #58886 .
2019-03-08 08:39:13 +00:00
bors
0547ceb200
Auto merge of #58013 - Zoxc:stable-hash-macro-simple, r=oli-obk
...
Create a derive macro for HashStable and allow proc macros in rustc
A combination of https://github.com/rust-lang/rust/pull/56864 and https://github.com/rust-lang/rust/pull/56795 . There were complications with using `serde_derive` as rustc doesn't know which crate to use for the host when there is a serde_derive in the sysroot and cargo passes another on the command line built from crates.io.
r? @eddyb (for proc macro changes) @alexcrichton (for rustbuild changes) @michaelwoerister (for the macro itself)
2019-03-08 05:46:08 +00:00
Esteban Küber
551ea65c87
Rely on drop to emit unclosed delims
2019-03-06 19:09:24 -08:00
Esteban Küber
6f0f2fc6d6
Simplify code
2019-03-06 18:46:11 -08:00
Esteban Küber
3818f8ba34
Add regression test for #58886
2019-03-06 18:46:11 -08:00
Esteban Küber
f156d92207
Always emit mismatched delim errors, never panic
2019-03-06 18:46:11 -08:00
Esteban Küber
ac6cc2d6b0
Collect unclosed delimiters in parent parser
2019-03-06 18:46:11 -08:00
Esteban Küber
51d0e86c22
Emit missing unclosed delimiter errors
2019-03-06 18:46:11 -08:00
Esteban Küber
c70a516c23
Panic when unmatched delimiters aren't emitted
2019-03-06 18:46:11 -08:00
Esteban Küber
e38e915cdf
Reduce test case
2019-03-06 18:45:59 -08:00
Esteban Küber
ed2de5a842
Emit unclosed delimiters during recovery
2019-03-06 18:45:59 -08:00
Esteban Küber
cc535a2a19
Bail when encountering a second unexpected token in the same span
2019-03-06 18:45:59 -08:00
Esteban Küber
2ec7d0b228
Do not panic on missing close paren
...
Fix #58856 .
2019-03-06 18:45:59 -08:00
bors
88f755f8a8
Auto merge of #58583 - varkor:const-generics-ty, r=oli-obk
...
Add const generics to ty (and transitive dependencies)
Split out from #53645 . This work is a collaborative effort with @yodaldevoid.
There are a number of stubs. Some I plan to leave for the next PRs (e.g. `infer` and `rustdoc`). Others I can either fix up in this PR, or as follow ups (which would avoid the time-consuming rebasing).
It was a little hard to split this up, as so much depends on ty and friends. Apologies for the large diff.
r? @eddyb
2019-03-07 00:27:07 +00:00
John Kåre Alsaker
f2ef283b72
Make Cargo a rustc tool again
2019-03-06 18:48:08 +01:00
varkor
de4478af91
Refactor const_to_op
2019-03-06 09:58:27 +00:00
varkor
ed9227abbd
Make adjustments for comments
2019-03-05 22:49:37 +00:00
varkor
5c8b3c38f1
Fix rebase fallout
2019-03-05 22:31:06 +00:00
varkor
0da0457593
Clean up some generic substs handling
2019-03-05 22:20:17 +00:00
varkor
162405f222
Fix negative integer literal test
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:20:01 +00:00
varkor
3e3a4212e8
Update test fallout
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:20:01 +00:00
varkor
4c18ee4abd
Update const generics tests
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:20:01 +00:00
varkor
54b935b9b9
Handle const generics elsewhere
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:20:01 +00:00
varkor
c236c241e6
Handle const generics in typeck
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:20:01 +00:00
varkor
8e56729b4d
Handle new ConstValue variants in mir
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:19:26 +00:00
varkor
2dfde88438
Implement structural_impls for const generics
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:17:42 +00:00
varkor
133e776bf0
Add HAS_CT_INFER
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:17:41 +00:00
varkor
fc0fbe8bb5
Stub rustdoc const generics implementations
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:17:41 +00:00
varkor
eb2b8be6a0
Implement collect for const parameters
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:17:41 +00:00
varkor
3001ae7f94
Implement wfcheck for const parameters
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:13:11 +00:00
varkor
a8361eb6fa
Refactor compare_method
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:13:10 +00:00
varkor
f7cd97f786
Add ast_const_to_const
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:13:10 +00:00
varkor
f761c414b1
Make a lazy const from a const param
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:11:33 +00:00
varkor
0d1c9c08d7
Pretty printing for const generics
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:11:04 +00:00
varkor
cbf5d22bcd
Add const type flags
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:11:04 +00:00
varkor
29c272d4ed
Take const into account in context
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:10:24 +00:00
varkor
63b7572d0d
Stub methods in infer
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:10:02 +00:00
varkor
9a9aa5b46a
Implement Hash for new types
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:09:31 +00:00
varkor
73a6df6079
Update diagnostics to include const parameters
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:09:31 +00:00
varkor
f7f60eef50
Add type constraints from const parameters
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:09:31 +00:00
varkor
7f2a4f7822
Add ConstValue::Param and ConstValue::Infer
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:08:44 +00:00
varkor
1ebc858e5d
Add const kind and UnpackedKind::Const
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:08:44 +00:00
varkor
691d054e05
Take const generics into account when monomorphising
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:08:44 +00:00
varkor
2ce19ae3d1
Use non_erasable_generics for codegen
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:07:37 +00:00
varkor
386e9fbda2
Add type_flags helper methods to consts
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:07:37 +00:00
varkor
8cbbbaae6c
Add InferConst
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:07:37 +00:00
varkor
a36d386c6d
Add ConstVid
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:07:37 +00:00
varkor
11c31bb1d3
Add ParamConst
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:07:37 +00:00
varkor
62f23c2b0b
Add Const generic param to ty
...
Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
2019-03-05 22:07:37 +00:00
John Kåre Alsaker
8052a4e5ac
Add a test for HashStable stability
2019-03-05 20:46:45 +01:00