Havvy (Ryan Scheel)
8e10ea6829
[Rustc Book] Explain --cfg's arguments
2018-10-15 21:38:32 -07:00
Roy Wellington Ⅳ
8362aa2178
Extract localStorage tests out into a helper method; use in getCurrentValue()
...
1. Extract the tests for whether or not we have workable localStorage out into
a helper method, so it can be more easily reused
2. Use it in getCurrentValue() too, for the same reasons, as suggested in code
review
2018-10-15 20:39:16 -07:00
bors
df0d6ad9c1
Auto merge of #55023 - euclio:llvm-error-handler, r=cuviper
...
Exit with code 101 on fatal codegen errors
Fixes #54992 .
This PR installs a custom fatal error handler that prints the error from LLVM and exits with 101. There should be no visible change in the output from LLVM. This allows distinguishing a fatal LLVM error with a compilation error by exit code.
This PR also modifies the LLVM codegen backend to ICE instead of emitting a fatal error when encountering a LLVM worker thread panic for the same reason.
r? @cuviper
2018-10-16 02:06:26 +00:00
Esteban Küber
70dd9ca5da
Add test for #34229
2018-10-15 15:47:55 -07:00
Niko Matsakis
7ce2e7a5fa
fix mir-opt test
2018-10-15 16:25:08 -04:00
Niko Matsakis
087d12972e
pacify the mercilous tidy
...
(long lines)
2018-10-15 16:25:08 -04:00
Niko Matsakis
2e4e983356
update tests
2018-10-15 16:25:08 -04:00
Niko Matsakis
ba20806e46
avoid type variables in the self-type
2018-10-15 16:25:08 -04:00
Niko Matsakis
16a382407b
pass along user_self_ty
2018-10-15 16:25:08 -04:00
Niko Matsakis
547182ea94
handle user-self-type for def-ids
2018-10-15 16:25:08 -04:00
Niko Matsakis
0e1d3624e9
pull the common code across user-ty variants up top
2018-10-15 16:25:08 -04:00
Niko Matsakis
1443ac0aa7
introduce a more expressive UserSubsts
2018-10-15 16:25:08 -04:00
Niko Matsakis
2a7fc227a6
introduce FnDef
and AdtDef
to UserTypeAnnotation
2018-10-15 16:24:46 -04:00
Niko Matsakis
aed6e4a083
introduce a UserTypeAnnotation
enum
2018-10-15 16:24:46 -04:00
Niko Matsakis
e339e84fff
move force_instantiate_unchecked
to be local to nll_relate
code
2018-10-15 16:24:46 -04:00
Niko Matsakis
e7ed997d87
extract type_relate
into the inference context as nll_relate
...
The name is not great. Nor is the existence of this code great. It
should be merged with the main "type relating code" at some point.
2018-10-15 16:24:46 -04:00
Niko Matsakis
b6a080e9d7
rework relate_type_and_user_type
to use type inference variables
...
We used to use a kind of "home-grown" variant where we tracked the
value of each canonical variable.
2018-10-15 16:24:46 -04:00
Niko Matsakis
a3409a1640
make instantiate_canonical_with_fresh_inference_vars
public again
...
This used to be public, then I made it private in a previous PR, but
there really wasn't a strong need for that.
2018-10-15 16:24:31 -04:00
Niko Matsakis
ca52427d06
make TypeRelating
take an infcx again
...
At some point, I had thought to use this code to handle equality
comparisons for the `IfEq` verify bounds; at that point, we might not
have had an infcx to talk about. But we wound up doing "SCC
representatives" instead, so that's fine.
2018-10-15 16:05:31 -04:00
Niko Matsakis
24bee005b6
add force_instantiate_unchecked
method
2018-10-15 16:05:31 -04:00
Niko Matsakis
4b69edc19e
rename to user_substs_applied_to_def
for consistency
2018-10-15 16:05:31 -04:00
bors
46880f41b7
Auto merge of #55095 - Manishearth:rollup, r=Manishearth
...
Rollup of 11 pull requests
Successful merges:
- #54820 (Closes #54538 : `unused_patterns` lint)
- #54963 (Cleanup rustc/session)
- #54991 (add test for #23189 )
- #55025 (Add missing lifetime fragment specifier to error message.)
- #55047 (doc: make core::fmt::Error example more simple)
- #55048 (Don't collect to vectors where unnecessary)
- #55060 (clarify pointer add/sub function safety concerns)
- #55062 (Make EvalContext::step public again)
- #55066 (Fix incorrect link in println! documentation)
- #55081 (Deduplicate tests)
- #55088 (Update rustc documentation link)
Failed merges:
r? @ghost
2018-10-15 19:50:50 +00:00
Oliver Scherer
c95ee9e91d
Add comments to remind everyone to keep the get_vtable
impls in sync
2018-10-15 21:00:17 +02:00
Oliver Scherer
ef3ece7444
Uplift some comments to doc comments
2018-10-15 20:59:15 +02:00
Oliver Scherer
8ac7fa414b
Synchronize get_vtable with the codegen_llvm
one
2018-10-15 20:59:15 +02:00
Oliver Scherer
80feed380d
Deduplicate vtables within a single evaluation
2018-10-15 20:54:23 +02:00
Oliver S̶c̶h̶n̶e̶i̶d̶e̶r Scherer
007390c21c
Add trailing newline to satisfy tidy
2018-10-15 20:30:11 +02:00
Oliver Scherer
2456f330d5
Try to trigger some error cases
2018-10-15 20:10:16 +02:00
Oliver Scherer
34052047cf
Explain all casts in detail
2018-10-15 19:58:21 +02:00
Manish Goregaokar
562625dda2
Rollup merge of #55088 - juchiast:master, r=varkor
...
Update rustc documentation link
Old link: http://manishearth.github.io/rust-internals-docs/rustc/
New link: https://doc.rust-lang.org/nightly/nightly-rustc/rustc/
2018-10-15 10:15:23 -07:00
Manish Goregaokar
4d837bef05
Rollup merge of #55081 - sinkuu:dedup_test, r=Manishearth
...
Deduplicate tests
* [`ui/lifetimes/lifetime-errors/ex3-both-anon-regions-both-are-structs-4`](0c665e20db/src/test/ui/lifetimes/lifetime-errors/ex3-both-anon-regions-both-are-structs-4.rs
)
and [`ex3-both-anon-regions-both-are-structs-3`](0c665e20db/src/test/ui/lifetimes/lifetime-errors/ex3-both-anon-regions-both-are-structs-3.rs
)
* [`ui/lint/lint-group-style`](0c665e20db/src/test/ui/lint/lint-group-style.rs
) and [`lint-group-nonstandard-style`](0c665e20db/src/test/ui/lint/lint-group-nonstandard-style.rs
)
2018-10-15 10:15:22 -07:00
Manish Goregaokar
6993a051e7
Rollup merge of #55066 - iaz3:patch-1, r=sfackler
...
Fix incorrect link in println! documentation
The eprintln! link was incorrectly linking to eprint! instead
2018-10-15 10:15:21 -07:00
Manish Goregaokar
96ab4a89ee
Rollup merge of #55062 - bjorn3:ecx-step-public, r=oli-obk
...
Make EvalContext::step public again
This is needed for priroda
Fixes #55061
2018-10-15 10:15:20 -07:00
Manish Goregaokar
8e42f01f43
Rollup merge of #55060 - jannic:patch-1, r=joshtriplett
...
clarify pointer add/sub function safety concerns
Ralf Jung made the same changes to the offset functions' documentation
in commit fb089156
. As add/sub just call offset, the same limitation
applies here, as well.
I did not copy the whole explanation ("In particular, the resulting pointer may *not* be used to access a different allocated object [...]") because I'd consider that as being too repetitive. The documentation of add/sub already refers to the offset function, so people interested in the details can look it up, there.
But changing 'an object' to 'the same object' is a small change which improves clarity a lot.
2018-10-15 10:15:19 -07:00
Manish Goregaokar
2e8b61dce6
Rollup merge of #55048 - ljedrz:begone_vecc, r=estebank
...
Don't collect to vectors where unnecessary
This removes 3 vector allocations and a call to `cloned()`.
2018-10-15 10:15:17 -07:00
Manish Goregaokar
dc87247538
Rollup merge of #55047 - tshepang:simple, r=alexcrichton
...
doc: make core::fmt::Error example more simple
2018-10-15 10:15:16 -07:00
Manish Goregaokar
78765e5244
Rollup merge of #55025 - ehuss:missing-lifetime-err-msg, r=petrochenkov
...
Add missing lifetime fragment specifier to error message.
A very minor issue, `lifetime` was missing from the error list.
I left `literal` in the list, even though it is unstable. It looks like it may stabilize soon anyways.
2018-10-15 10:15:15 -07:00
Manish Goregaokar
defcb164b1
Rollup merge of #54991 - euclio:issue-23189, r=tmandry
...
add test for #23189
Fixes #23189
2018-10-15 10:15:13 -07:00
Manish Goregaokar
3ffb16f6c6
Rollup merge of #54963 - ljedrz:cleanup_rustc_session, r=varkor
...
Cleanup rustc/session
- improve allocations
- improve common patterns
- use `to_owned` when no string conversion is needed
- move `const`s up to improve readability
- whitespace & formatting improvements
2018-10-15 10:15:12 -07:00
Manish Goregaokar
7ba24e8fcf
Rollup merge of #54820 - kleimkuhler:issue-54538-unused_patterns-lint, r=nikomatsakis
...
Closes #54538 : `unused_patterns` lint
Closes #54538
r? @nikomatsakis
2018-10-15 10:15:11 -07:00
bors
5a52983d69
Auto merge of #54858 - nikomatsakis:universes-refactor-2, r=scalexm
...
second round of refactorings for universes
A second round of (what I believe to be) "no functional change" refactorings, taken from my universes branch.
r? @scalexm
2018-10-15 16:46:55 +00:00
Niko Matsakis
05f67ca1a2
remove the sub/super terminology for universes
...
Instead, we talk about:
- creating the "next" universe
- universes "extending" one another
- and `u1.can_name(u2)`, meaning that `u1` contains all names from `u2`
2018-10-15 11:42:07 -04:00
Niko Matsakis
f419077811
pacify the mercilous tidy with rustfmt
2018-10-15 11:42:07 -04:00
Niko Matsakis
be02f74ea9
remove dead iterator code
2018-10-15 11:42:07 -04:00
Niko Matsakis
6ace43cf77
hide SmallCanonicalVarValues
in OriginalQueryValues
struct
2018-10-15 11:42:07 -04:00
Niko Matsakis
da76b4d4e1
convert UniverseIndex
into a newtype_index!
2018-10-15 11:42:07 -04:00
Niko Matsakis
460915be73
make UniverseIndex
hashable, rename "sub-" to "superuniverse"
...
The only name was silly. U1 can contain everything from U0 *plus* more
things.
2018-10-15 11:42:07 -04:00
Niko Matsakis
28df2bf7b5
control canonicalization with a trait vs bools
2018-10-15 11:42:07 -04:00
bors
4f9b581f71
Auto merge of #54917 - varkor:unused-which, r=cramertj
...
Unused result warning: "X which must" ↦ "X that must"
Address a little grammatical faux pas in the unused result warning.
2018-10-15 14:16:45 +00:00
Niko Matsakis
42a661843c
introduce canonical_var_for_region
helper fn
2018-10-15 08:57:22 -04:00