bors
cb2effd44e
Auto merge of #81574 - tmiasko:p, r=oli-obk
...
Precompute ancestors when checking privacy
Precompute ancestors of the old error node set so that check for private
types and traits in public interfaces can in constant time determine if
the current item has any descendants in the old error set.
This removes disparity in compilation time between public and private type
aliases reported in #50614 (from 30 s to 5 s, in an example making extensive use
of private type aliases).
No functional changes intended.
2021-02-18 10:13:36 +00:00
Camille GILLOT
c4e7427081
Only store a LocalDefId in hir::MacroDef.
2021-02-15 19:35:55 +01:00
Camille GILLOT
996dc8d5c5
Only store a LocalDefId in hir::ForeignItem.
2021-02-15 19:32:29 +01:00
Camille GILLOT
786a80e9ea
Only store a LocalDefId in hir::ImplItem.
2021-02-15 19:32:29 +01:00
Camille GILLOT
a871a0f111
Only store a LocalDefId in hir::TraitItem.
2021-02-15 19:32:28 +01:00
Camille GILLOT
cebbba081e
Only store a LocalDefId in hir::Item.
...
Items are guaranteed to be HIR owner.
2021-02-15 19:32:10 +01:00
Camille GILLOT
c676e358a5
Use ItemId as a strongly typed index.
2021-02-15 19:24:58 +01:00
Matthew Jasper
79f6f11816
Remove some unnecessary trait_ref
calls
2021-02-13 19:30:07 +00:00
Ellen
7f8530f16b
more things are const evaluatable *sparkles*
2021-02-01 20:05:50 +00:00
kadmin
6a03f0350d
Add error message for private fn
...
Bless tests
Update with changes from comments
2021-01-31 20:45:13 +00:00
Tomasz Miąsko
b01976aa26
Precompute ancestors when checking privacy
...
Precompute ancestors of the old error node set so that check for private
types and traits in public interfaces can in constant time determine if
the current item has any descendants in the old error set.
No functional changes intended.
2021-01-30 00:00:00 +00:00
Jack Huey
3dea68de1d
Review changes
2021-01-16 18:56:37 -05:00
Joshua Nelson
a8ff647deb
Separate out a hir::Impl
struct
...
This makes it possible to pass the `Impl` directly to functions, instead
of having to pass each of the many fields one at a time. It also
simplifies matches in many cases.
2021-01-12 20:32:33 -05:00
Daniel Henry-Mantilla
a4de27aeec
Fixed non-declarative-nor-opaque macros effective privacy.
...
cc @petrochenkov
2021-01-06 15:13:39 +01:00
Daniel Henry-Mantilla
dd15f410df
WIP: attempt to fix the undocument re-export issue
2021-01-06 15:13:39 +01:00
Mara Bos
9e8edc8c22
Rollup merge of #80495 - jyn514:rename-empty, r=petrochenkov
...
Rename kw::Invalid -> kw::Empty
See https://rust-lang.zulipchat.com/#narrow/stream/182449-t-compiler.2Fhelp/topic/Is.20there.20a.20symbol.20for.20the.20empty.20string.3F/near/220054471
for context.
r? `@petrochenkov`
2020-12-30 20:56:58 +00:00
Joshua Nelson
edeac1778c
Rename kw::Invalid -> kw::Empty
...
See https://rust-lang.zulipchat.com/#narrow/stream/182449-t-compiler.2Fhelp/topic/Is.20there.20a.20symbol.20for.20the.20empty.20string.3F/near/220054471
for context.
2020-12-30 09:50:02 -05:00
Joshua Nelson
53da233aec
Remove FIXME in rustc_privacy
2020-12-26 19:34:10 -05:00
Jack Huey
ed80815bf2
Move binder for dyn to each list item
2020-12-11 15:02:46 -05:00
Camille GILLOT
032f68d625
Remove ForeignMod struct.
2020-11-26 21:32:27 +01:00
Camille GILLOT
419a9186a4
Store ForeignItem in a side table.
2020-11-26 21:29:27 +01:00
Joshua Nelson
432a33e1e2
Fix typo in comment
2020-11-22 20:32:36 -05:00
LeSeulArtichaut
e0f3119103
Introduce TypeVisitor::BreakTy
2020-11-14 20:25:27 +01:00
Guillaume Gomez
99200f760b
Fix even more URLs
2020-11-05 20:11:29 +01:00
bors
0d033dee3e
Auto merge of #78182 - LeSeulArtichaut:ty-visitor-contolflow, r=lcnr,oli-obk
...
TypeVisitor: use `std::ops::ControlFlow` instead of `bool`
Implements MCP rust-lang/compiler-team#374 .
Blocked on FCP in rust-lang/compiler-team#374 .
r? `@lcnr` cc `@jonas-schievink`
2020-10-30 22:53:55 +00:00
Joshua Nelson
bfecb18771
Fix some more clippy warnings
2020-10-30 10:12:56 -04:00
LeSeulArtichaut
9433eb83fe
Remove implicit Continue
type
2020-10-30 12:27:47 +01:00
LeSeulArtichaut
24e1a7e656
Use ControlFlow::is{break,continue}
2020-10-30 12:27:46 +01:00
LeSeulArtichaut
61f8182cec
TypeVisitor: use ControlFlow
in rustc_{mir,privacy,traits,typeck}
2020-10-30 12:27:44 +01:00
Vadim Petrochenkov
cee5521a03
Calculate visibilities once in resolve
...
Then use them through a query based on resolver outputs
2020-10-19 11:57:50 +03:00
Matthew Jasper
f958e6c246
Separate bounds and predicates for associated/opaque types
2020-10-06 11:19:29 +01:00
Erik Hofmayer
138a2e5eaa
/nightly/nightly-rustc
2020-09-23 21:51:56 +02:00
Erik Hofmayer
dd66ea2d3d
Updated html_root_url for compiler crates
2020-09-23 21:14:43 +02:00
Ralf Jung
4322e1b92d
Rollup merge of #76821 - est31:remove_redundant_nightly_features, r=oli-obk,Mark-Simulacrum
...
Remove redundant nightly features
Removes a bunch of redundant/outdated nightly features. The first commit removes a `core_intrinsics` use for which a stable wrapper has been provided since. The second commit replaces the `const_generics` feature with `min_const_generics` which might get stabilized this year. The third commit is the result of a trial/error run of removing every single feature and then adding it back if compile failed. A bunch of unused features are the result that the third commit removes.
2020-09-20 12:08:22 +02:00
Bastian Kauschke
30ff1ef3d0
support const_evaluatable_checked across crate boundaries
2020-09-18 17:11:34 +02:00
est31
ebdea01143
Remove redundant #![feature(...)] 's from compiler/
2020-09-17 07:58:45 +02:00
LeSeulArtichaut
3e14b684dd
Change ty.kind to a method
2020-09-04 17:47:51 +02:00
mark
9e5f7d5631
mv compiler to compiler/
2020-08-30 18:45:07 +03:00