Nicholas Nethercote
5fa961b951
Overhaul TyS
and Ty
.
...
Specifically, change `Ty` from this:
```
pub type Ty<'tcx> = &'tcx TyS<'tcx>;
```
to this
```
pub struct Ty<'tcx>(Interned<'tcx, TyS<'tcx>>);
```
There are two benefits to this.
- It's now a first class type, so we can define methods on it. This
means we can move a lot of methods away from `TyS`, leaving `TyS` as a
barely-used type, which is appropriate given that it's not meant to
be used directly.
- The uniqueness requirement is now explicit, via the `Interned` type.
E.g. the pointer-based `Eq` and `Hash` comes from `Interned`, rather
than via `TyS`, which wasn't obvious at all.
Much of this commit is boring churn. The interesting changes are in
these files:
- compiler/rustc_middle/src/arena.rs
- compiler/rustc_middle/src/mir/visit.rs
- compiler/rustc_middle/src/ty/context.rs
- compiler/rustc_middle/src/ty/mod.rs
Specifically:
- Most mentions of `TyS` are removed. It's very much a dumb struct now;
`Ty` has all the smarts.
- `TyS` now has `crate` visibility instead of `pub`.
- `TyS::make_for_test` is removed in favour of the static `BOOL_TY`,
which just works better with the new structure.
- The `Eq`/`Ord`/`Hash` impls are removed from `TyS`. `Interned`s impls
of `Eq`/`Hash` now suffice. `Ord` is now partly on `Interned`
(pointer-based, for the `Equal` case) and partly on `TyS`
(contents-based, for the other cases).
- There are many tedious sigil adjustments, i.e. adding or removing `*`
or `&`. They seem to be unavoidable.
2022-02-15 16:03:24 +11:00
flip1995
611d039814
Merge commit '57b3c4b90f4346b3990c1be387c3b3ca7b78412c' into clippyup
2022-02-10 18:40:06 +01:00
Cameron Steffen
82f613ee3b
Remove a span from hir::ExprKind::MethodCall
2022-01-21 07:48:10 -06:00
flip1995
fb0142ae41
Merge commit '97a5daa65908e59744e2bc625b14849352231c75' into clippyup
2022-01-13 13:18:19 +01:00
flip1995
8fea1d94f3
Merge commit 'a5d597637dcb78dc73f93561ce474f23d4177c35' into clippyup
2021-12-06 12:33:31 +01:00
flip1995
e674d0a599
Merge commit 'e18101137866b79045fee0ef996e696e68c920b4' into clippyup
2021-11-04 12:52:36 +00:00
flip1995
7631fc5d82
Merge commit '91496c2ac6abf6454c413bb23e8becf6b6dc20ea' into clippyup
2021-10-21 13:11:36 +02:00
flip1995
091ed44b50
Merge commit '27afd6ade4bb1123a8bf82001629b69d23d62aff' into clippyup
2021-09-08 16:31:47 +02:00
flip1995
1ad5464200
Merge commit '7bfc26ec8e7a454786668e7e52ffe527fc649735' into clippyup
2021-08-12 11:16:25 +02:00
flip1995
2b20f49841
Merge commit '0cce3f643bfcbb92d5a1bb71858c9cbaff749d6b' into clippyup
2021-07-29 12:16:06 +02:00
flip1995
884ef4c287
Merge commit '4c41a222ca5d1325fb4b6709395bd06e766cc042' into clippyup
2021-07-19 11:52:05 +02:00
flip1995
ebe52869a3
Merge commit '61eb38aeda6cb54b93b872bf503d70084c4d621c' into clippyup
2021-07-01 18:17:38 +02:00
Alexander Melentyev
dab42cff02
Delete spaces
2021-06-21 12:11:37 +03:00
flip1995
6c27482115
Merge commit '3ae8faff4d46ad92f194c2a4b941c3152a701b31' into clippyup
2021-06-03 08:41:37 +02:00
flip1995
97705b7ea6
Merge commit '9e3cd88718cd1912a515d26dbd9c4019fd5a9577' into clippyup
2021-05-20 13:07:57 +02:00
flip1995
d605882023
Merge commit 'b71f3405606d49b9735606b479c3415a0ca9810f' into clippyup
2021-05-06 12:20:44 +02:00
flip1995
ae72f1adb9
Merge commit '7c7683c8efe447b251d6c5ca6cce51233060f6e8' into clippyup
2021-04-27 16:55:11 +02:00
flip1995
02bf692169
Merge commit '98e2b9f25b6db4b2680a3d388456d9f95cb28344' into clippyup
2021-04-22 11:31:13 +02:00
flip1995
f6d1f368db
Merge commit 'b40ea209e7f14c8193ddfc98143967b6a2f4f5c9' into clippyup
2021-04-08 17:50:13 +02:00
flip1995
9f6b5de7de
Merge commit '0e87918536b9833bbc6c683d1f9d51ee2bf03ef1' into clippyup
2021-03-25 19:29:11 +01:00
flip1995
f2f2a005b4
Merge commit '6ed6f1e6a1a8f414ba7e6d9b8222e7e5a1686e42' into clippyup
2021-03-12 15:30:50 +01:00
flip1995
f64149dd04
Merge commit '928e72dd10749875cbd412f74bfbfd7765dbcd8a' into clippyup
2021-02-25 11:25:22 +01:00
Manish Goregaokar
c8cb90abbd
Merge commit '3e4179766bcecd712824da04356621b8df012ea4' into sync-from-clippy
2021-02-02 20:43:30 -08:00
flip1995
ac912be984
Merge commit '95c0459217d1661edfa794c8bb122452b92fb485' into clippyup
2021-01-30 18:06:34 +01:00
flip1995
488153ff2f
Merge commit '953f024793dab92745fee9cd2c4dee6a60451771' into clippyup
2021-01-15 10:56:44 +01:00
flip1995
f03edfd7a1
Merge commit '4911ab124c481430672a3833b37075e6435ec34d' into clippyup
2020-12-20 17:19:49 +01:00
flip1995
d3d2018ead
Merge commit '3e7c6dec244539970b593824334876f8b6ed0b18' into clippyup
2020-11-23 13:51:04 +01:00
flip1995
34244190d4
Merge commit 'b20d4c155d2fe3a8391f86dcf9a8c49e17188703' into clippyup
2020-11-05 14:29:48 +01:00
Eduardo Broto
cdb555f4fc
Merge commit 'bf1c6f9871f430e284b17aa44059e0d0395e28a6' into clippyup
2020-10-23 22:16:59 +02:00
flip1995
fbf2430f02
Merge commit '2f6439ae6a6803d030cceb3ee14c9150e91b328b' into clippyup
2020-10-09 12:45:29 +02:00
flip1995
d1f9cad102
Merge commit 'e636b88aa180e8cab9e28802aac90adbc984234d' into clippyup
2020-09-24 14:49:22 +02:00
flip1995
282c59820b
Merge commit '3d0b0e66afdfaa519d8855b338b35b4605775945' into clippyup
2020-08-28 18:43:25 +02:00
flip1995
027780ca2c
Merge commit '09bd400243ed6f7059fedc0c1623aae3792521d6' into clippyup
2020-08-11 17:50:45 +02:00
Valentin Lazureanu
5a20489c5c
Rename TypeckTables to TypeckResults.
2020-07-17 08:47:04 +00:00
Eduard-Mihai Burtescu
30c046ede4
Use 'tcx for references to AccessLevels wherever possible.
2020-07-03 00:04:48 +03:00
Eduard-Mihai Burtescu
f5ce0e5fe9
rustc_lint: only query typeck_tables_of
when a lint needs it.
2020-06-26 02:56:23 +03:00
Lzu Tao
8db24840f7
Merge commit 'ff0993c5e9162ddaea78e83d0f0161e68bd4ea73' into clippy
2020-06-09 14:36:01 +00:00
flip1995
a0e9f9bd0d
Merge commit '7ea7cd165ad6705603852771bf82cc2fd6560db5' into clippyup2
2020-05-28 15:45:24 +02:00
flip1995
451badeddf
Run fetch before testing if master contains beta
2020-04-23 23:25:35 +02:00
flip1995
c19ca0e8a8
The beta branch update should not require a force push
2020-04-23 23:25:35 +02:00
flip1995
4619bb243d
Add a note to the beta sections of release.md
2020-04-23 23:25:35 +02:00
bors
ef6ba82fee
Auto merge of #5495 - phansch:update_changelog_docs, r=flip1995
...
Update the changelog update documentation
I just started working on updating the changelog. Hopefully the docs are a bit clearer now?
r? @flip1995
changelog: none
2020-04-20 20:40:45 +00:00
Devin R
489dd2e504
factor ifs into function, add differing mutex test
2020-04-20 15:08:44 -04:00
Philipp Hansch
2141db84eb
Update the changelog update documentation
2020-04-20 20:39:49 +02:00
Devin R
ae820924c4
use if chain
2020-04-20 06:30:01 -04:00
Devin R
fca3537fa3
add note about update-all-refs script, revert redundant pat to master
2020-04-20 06:30:00 -04:00
xiongmao86
cf4e35339b
Add an Option<Span> argument to span_lint_and_help.
2020-04-18 18:28:29 +08:00
flip1995
2481d3c74a
Rename rustc -> rustc_middle in doc links
2020-04-04 17:01:42 +02:00
Philipp Krones
2a4493aaa6
Fix typo in release.md
...
Co-Authored-By: Phil Hansch <dev@phansch.net>
2020-03-30 19:32:48 +02:00
flip1995
d7440a0d7c
Document how to backport changes to beta
2020-03-25 19:52:58 +01:00