Files
rust/tests/ui
bors a946c1e017 Auto merge of #114470 - pnkfelix:dont-export-no-mangle-from-proc-macros-issue-99978, r=bjorn3
Restrict linker version script of proc-macro crates to just its two symbols

Restrict linker version script of proc-macro crates to just the two symbols of each proc-macro crate.

The main known effect of doing this is to stop including `#[no_mangle]` symbols in the linker version script.

Background:

The combination of a proc-macro crate with an import of another crate that itself exports a no_mangle function was broken for a period of time, because:

* In PR #99944 we stopped exporting no_mangle symbols from proc-macro crates; proc-macro crates have a very limited interface and are meant to be treated as a blackbox to everything except rustc itself. However: he constructed linker version script still referred to them, but resolving that discrepancy was left as a FIXME in the code, tagged with issue #99978.
* In PR #108017 we started telling the linker to check (via the`--no-undefined-version` linker invocation flag) that every symbol referenced in the "linker version script" is provided as linker input. So the unresolved discrepancy from #99978 started surfacing as a compile-time error (e.g. #111888).

Fix #111888
Fix #99978.
2023-08-09 00:38:00 +00:00
..
2023-08-07 20:35:55 +02:00
2023-07-28 20:15:12 +02:00
2023-05-30 13:03:40 +02:00
2023-08-06 15:06:40 +02:00
2023-07-17 22:06:32 +00:00
2023-08-03 15:12:44 +02:00
2023-08-07 14:11:03 +02:00
2023-08-07 14:11:03 +02:00
2023-05-08 17:58:01 -03:00
2023-08-07 19:06:18 +00:00
2023-08-08 09:39:59 +00:00
2023-08-01 23:12:03 +00:00
2023-07-28 22:23:21 +02:00
2023-04-29 13:01:46 +01:00
2023-07-28 11:20:11 +00:00
2023-07-29 11:47:26 +02:00
2023-06-29 16:24:07 +03:00
2023-06-26 08:56:32 +00:00
2023-08-07 17:16:10 +00:00
2023-04-03 09:24:11 +02:00
2023-08-06 13:34:53 +00:00
2023-04-19 19:13:45 +00:00
2023-06-20 19:46:01 -04:00
2023-05-08 03:36:30 +00:00
2023-05-29 12:07:41 -03:00
2023-03-29 18:04:44 -04:00
2023-06-12 20:24:48 +08:00
2023-04-29 13:01:46 +01:00
2023-05-12 00:10:52 +00:00
2023-03-08 00:00:18 +00:00
2023-04-13 22:10:26 -05:00
2023-04-13 22:10:26 -05:00
2023-03-08 00:00:18 +00:00
2023-03-08 00:00:18 +00:00