<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/compiler/rustc_session/src/session.rs, branch 1.54.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.54.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.54.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2021-06-07T08:37:45+00:00</updated>
<entry>
<title>Revert "Merge CrateDisambiguator into StableCrateId"</title>
<updated>2021-06-07T08:37:45+00:00</updated>
<author>
<name>bjorn3</name>
<email>bjorn3@users.noreply.github.com</email>
</author>
<published>2021-06-01T14:32:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=8176ab8bc18fdd7d3c2cf7f720c51166364c33a3'/>
<id>urn:sha1:8176ab8bc18fdd7d3c2cf7f720c51166364c33a3</id>
<content type='text'>
This reverts commit d0ec85d3fb6d322496cb8f4bc1c21e19f23284ad.
</content>
</entry>
<entry>
<title>Miscellaneous inlining improvements</title>
<updated>2021-06-02T06:49:58+00:00</updated>
<author>
<name>Tomasz Miąsko</name>
<email>tomasz.miasko@gmail.com</email>
</author>
<published>2021-06-01T00:00:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=c1f6495b8e19325a57702a7ce016e6d5a3f25e26'/>
<id>urn:sha1:c1f6495b8e19325a57702a7ce016e6d5a3f25e26</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Auto merge of #85559 - 12101111:sanitizer-crt-static, r=nagisa</title>
<updated>2021-05-30T23:38:10+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2021-05-30T23:38:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=aab93ca37f38f70869c5de47c1877e54579e9de2'/>
<id>urn:sha1:aab93ca37f38f70869c5de47c1877e54579e9de2</id>
<content type='text'>
Diagnose use sanitizers with crt-static

Fix: https://github.com/rust-lang/rust/issues/85459
</content>
</entry>
<entry>
<title>Merge CrateDisambiguator into StableCrateId</title>
<updated>2021-05-30T10:51:34+00:00</updated>
<author>
<name>bjorn3</name>
<email>bjorn3@users.noreply.github.com</email>
</author>
<published>2021-05-29T10:09:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=d0ec85d3fb6d322496cb8f4bc1c21e19f23284ad'/>
<id>urn:sha1:d0ec85d3fb6d322496cb8f4bc1c21e19f23284ad</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Diagnose use sanitizers with crt-static</title>
<updated>2021-05-28T16:15:28+00:00</updated>
<author>
<name>12101111</name>
<email>w12101111@gmail.com</email>
</author>
<published>2021-05-21T17:24:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=43764844399af82f407fe963fa708e8f90981ea4'/>
<id>urn:sha1:43764844399af82f407fe963fa708e8f90981ea4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Auto merge of #83813 - cbeuw:remap-std, r=michaelwoerister</title>
<updated>2021-05-12T11:05:56+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2021-05-12T11:05:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e1ff91f439bc09f566da211c6449821b4e949279'/>
<id>urn:sha1:e1ff91f439bc09f566da211c6449821b4e949279</id>
<content type='text'>
Fix `--remap-path-prefix` not correctly remapping `rust-src` component paths and unify handling of path mapping with virtualized paths

This PR fixes #73167 ("Binaries end up containing path to the rust-src component despite `--remap-path-prefix`") by preventing real local filesystem paths from reaching compilation output if the path is supposed to be remapped.

`RealFileName::Named` introduced in #72767 is now renamed as `LocalPath`, because this variant wraps a (most likely) valid local filesystem path.

`RealFileName::Devirtualized` is renamed as `Remapped` to be used for remapped path from a real path via `--remap-path-prefix` argument, as well as real path inferred from a virtualized (during compiler bootstrapping) `/rustc/...` path. The `local_path` field is now an `Option&lt;PathBuf&gt;`, as it will be set to `None` before serialisation, so it never reaches any build output. Attempting to serialise a non-`None` `local_path` will cause an assertion faliure.

When a path is remapped, a `RealFileName::Remapped` variant is created. The original path is preserved in `local_path` field and the remapped path is saved in `virtual_name` field. Previously, the `local_path` is directly modified which goes against its purpose of "suitable for reading from the file system on the local host".

`rustc_span::SourceFile`'s fields `unmapped_path` (introduced by #44940) and `name_was_remapped` (introduced by #41508 when `--remap-path-prefix` feature originally added) are removed, as these two pieces of information can be inferred from the `name` field: if it's anything other than a `FileName::Real(_)`, or if it is a `FileName::Real(RealFileName::LocalPath(_))`, then clearly `name_was_remapped` would've been false and `unmapped_path` would've been `None`. If it is a `FileName::Real(RealFileName::Remapped{local_path, virtual_name})`, then `name_was_remapped` would've been true and `unmapped_path` would've been `Some(local_path)`.

cc `@eddyb` who implemented `/rustc/...` path devirtualisation
</content>
</entry>
<entry>
<title>Auto merge of #83610 - bjorn3:driver_cleanup, r=cjgillot</title>
<updated>2021-05-12T08:38:03+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2021-05-12T08:38:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ac923d94f86a6f7c881ecbedcd0a68d7986a35bd'/>
<id>urn:sha1:ac923d94f86a6f7c881ecbedcd0a68d7986a35bd</id>
<content type='text'>
rustc_driver cleanup

Best reviewed one commit at a time.
</content>
</entry>
<entry>
<title>Auto merge of #83800 - xobs:impl-16351-nightly, r=nagisa</title>
<updated>2021-05-09T22:01:26+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2021-05-09T22:01:26+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=c55c26cb36a988d5df8b9f4442dc8af93e687a39'/>
<id>urn:sha1:c55c26cb36a988d5df8b9f4442dc8af93e687a39</id>
<content type='text'>
Add default search path to `Target::search()`

The function `Target::search()` accepts a target triple and returns a `Target` struct defining the requested target.

There is a `// FIXME 16351: add a sane default search path?` comment that indicates it is desirable to include some sort of default. This was raised in https://github.com/rust-lang/rust/issues/16351 which was closed without any resolution.

https://github.com/rust-lang/rust/pull/31117 was proposed, however that has platform-specific logic that is unsuitable for systems without `/etc/`.

This patch implements the suggestion raised in https://github.com/rust-lang/rust/issues/16351#issuecomment-180878193 where a `target.json` file may be placed in `$(rustc --print sysroot)/lib/rustlib/&lt;target-triple&gt;/target.json`. This allows shipping a toolchain distribution as a single file that gets extracted to the sysroot.
</content>
</entry>
<entry>
<title>Remove unused `opt_span_warn` function</title>
<updated>2021-05-09T03:14:09+00:00</updated>
<author>
<name>Joshua Nelson</name>
<email>jyn514@gmail.com</email>
</author>
<published>2021-03-28T03:00:34+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f25aa5767f0bb1409c7c7b6c202f22d8bf48bbee'/>
<id>urn:sha1:f25aa5767f0bb1409c7c7b6c202f22d8bf48bbee</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Make `Diagnostic::span_fatal` unconditionally raise an error</title>
<updated>2021-05-09T03:12:04+00:00</updated>
<author>
<name>Joshua Nelson</name>
<email>jyn514@gmail.com</email>
</author>
<published>2021-03-28T02:45:01+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=96509b483589e8d9ae98d1c075dccef184c8be30'/>
<id>urn:sha1:96509b483589e8d9ae98d1c075dccef184c8be30</id>
<content type='text'>
It had no callers which didn't immediately call `raise()`, and this
unifies the behavior with `Session`.
</content>
</entry>
</feed>
