<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/compiler/rustc_codegen_cranelift/src/debuginfo, branch 1.68.2</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.68.2</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.68.2'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2023-01-16T14:46:44+00:00</updated>
<entry>
<title>Move compiler input and ouput paths into session</title>
<updated>2023-01-16T14:46:44+00:00</updated>
<author>
<name>Oli Scherer</name>
<email>git-spam-no-reply9815368754983@oli-obk.de</email>
</author>
<published>2022-12-07T09:24:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=9f5cd0315386e761beae8afd07df94e42a4db154'/>
<id>urn:sha1:9f5cd0315386e761beae8afd07df94e42a4db154</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge commit '2bb3996244cf1b89878da9e39841e9f6bf061602' into sync_cg_clif-2022-12-14</title>
<updated>2022-12-14T18:30:46+00:00</updated>
<author>
<name>bjorn3</name>
<email>17426603+bjorn3@users.noreply.github.com</email>
</author>
<published>2022-12-14T18:30:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=949699931e4370d4a0d65b896bb5d73f35609528'/>
<id>urn:sha1:949699931e4370d4a0d65b896bb5d73f35609528</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix `rustdoc --version` when used with download-rustc</title>
<updated>2022-11-09T08:54:51+00:00</updated>
<author>
<name>Joshua Nelson</name>
<email>jnelson@cloudflare.com</email>
</author>
<published>2022-11-09T08:52:59+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a68ec2205335e2c3de8ba56fb6a31b99f10c95a6'/>
<id>urn:sha1:a68ec2205335e2c3de8ba56fb6a31b99f10c95a6</id>
<content type='text'>
Previously, rustdoc would unconditionally report the version that *rustc* was compiled with.
That showed things like `nightly-2022-10-30`, which wasn't right, since this was a `dev` build compiled from source.

Fix it by changing `rustc_driver::version` to a macro expanded at invocation time.
</content>
</entry>
<entry>
<title>ssa: implement `#[collapse_debuginfo]`</title>
<updated>2022-09-07T12:54:51+00:00</updated>
<author>
<name>David Wood</name>
<email>david.wood@huawei.com</email>
</author>
<published>2022-07-21T15:19:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=38958aa8bdd2b46dd7f9213bda1c9c6433282a68'/>
<id>urn:sha1:38958aa8bdd2b46dd7f9213bda1c9c6433282a68</id>
<content type='text'>
Debuginfo line information for macro invocations are collapsed by
default - line information are replaced by the line of the outermost
expansion site. Using `-Zdebug-macros` disables this behaviour.

When the `collapse_debuginfo` feature is enabled, the default behaviour
is reversed so that debuginfo is not collapsed by default. In addition,
the `#[collapse_debuginfo]` attribute is available and can be applied to
macro definitions which will then have their line information collapsed.

Signed-off-by: David Wood &lt;david.wood@huawei.com&gt;
</content>
</entry>
<entry>
<title>Merge commit 'e9d1a0a7b0b28dd422f1a790ccde532acafbf193' into sync_cg_clif-2022-08-24</title>
<updated>2022-08-24T16:40:58+00:00</updated>
<author>
<name>bjorn3</name>
<email>17426603+bjorn3@users.noreply.github.com</email>
</author>
<published>2022-08-24T16:40:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=7b9c8c87819d0d122f56017f5e093ea8c082dc69'/>
<id>urn:sha1:7b9c8c87819d0d122f56017f5e093ea8c082dc69</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rename `debugging_opts` to `unstable_opts`</title>
<updated>2022-07-13T22:47:06+00:00</updated>
<author>
<name>Joshua Nelson</name>
<email>jnelson@cloudflare.com</email>
</author>
<published>2022-07-06T12:44:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=3c9765cff18a3c4ba2962ea59d4c3f6966f9700c'/>
<id>urn:sha1:3c9765cff18a3c4ba2962ea59d4c3f6966f9700c</id>
<content type='text'>
This is no longer used only for debugging options (e.g. `-Zoutput-width`, `-Zallow-features`).
Rename it to be more clear.
</content>
</entry>
<entry>
<title>Merge commit '370c397ec9169809e5ad270079712e0043514240' into sync_cg_clif-2022-03-20</title>
<updated>2022-03-20T15:55:21+00:00</updated>
<author>
<name>bjorn3</name>
<email>bjorn3@users.noreply.github.com</email>
</author>
<published>2022-03-20T15:55:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ef4ce72919d1a16ad5aed4108d5abcf4d5c2cdc8'/>
<id>urn:sha1:ef4ce72919d1a16ad5aed4108d5abcf4d5c2cdc8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Overhaul `TyS` and `Ty`.</title>
<updated>2022-02-15T05:03:24+00:00</updated>
<author>
<name>Nicholas Nethercote</name>
<email>n.nethercote@gmail.com</email>
</author>
<published>2022-01-25T03:13:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e9a0c429c5da5a34c0469117774fe32694a0281c'/>
<id>urn:sha1:e9a0c429c5da5a34c0469117774fe32694a0281c</id>
<content type='text'>
Specifically, change `Ty` from this:
```
pub type Ty&lt;'tcx&gt; = &amp;'tcx TyS&lt;'tcx&gt;;
```
to this
```
pub struct Ty&lt;'tcx&gt;(Interned&lt;'tcx, TyS&lt;'tcx&gt;&gt;);
```
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 `&amp;`. They seem to be unavoidable.
</content>
</entry>
<entry>
<title>Store a `Symbol` instead of an `Ident` in `VariantDef`/`FieldDef`</title>
<updated>2022-01-11T15:16:22+00:00</updated>
<author>
<name>Aaron Hill</name>
<email>aa1ronham@gmail.com</email>
</author>
<published>2022-01-03T03:37:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=450ef8613ce80278b98e1b1a73448ea810322567'/>
<id>urn:sha1:450ef8613ce80278b98e1b1a73448ea810322567</id>
<content type='text'>
The field is also renamed from `ident` to `name. In most cases,
we don't actually need the `Span`. A new `ident` method is added
to `VariantDef` and `FieldDef`, which constructs the full `Ident`
using `tcx.def_ident_span()`. This method is used in the cases
where we actually need an `Ident`.

This makes incremental compilation properly track changes
to the `Span`, without all of the invalidations caused by storing
a `Span` directly via an `Ident`.
</content>
</entry>
<entry>
<title>Merge commit '40b00f4200fbdeefd11815398cb46394b8cb0a5e' into sync_cg_clif-2021-12-30</title>
<updated>2021-12-30T13:53:41+00:00</updated>
<author>
<name>bjorn3</name>
<email>bjorn3@users.noreply.github.com</email>
</author>
<published>2021-12-30T13:53:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a8e6d5b04d844a8b540a772dec4f6a233f307c35'/>
<id>urn:sha1:a8e6d5b04d844a8b540a772dec4f6a233f307c35</id>
<content type='text'>
</content>
</entry>
</feed>
