about summary refs log tree commit diff
path: root/compiler/rustc_errors/src
diff options
context:
space:
mode:
authorMatthias Krüger <matthias.krueger@famsik.de>2022-06-16 09:10:23 +0200
committerGitHub <noreply@github.com>2022-06-16 09:10:23 +0200
commit97a7a3c9ea29b13ced87c4641e5aea10cfb89253 (patch)
treeea1f5e2be139050e0beac753cce53437201f38b8 /compiler/rustc_errors/src
parentae58a55d0348681c1b7c845ebfd20eb9ee554b2e (diff)
parent471fa05fef0b09e0430a80e3d7f205ef19fc4a86 (diff)
downloadrust-97a7a3c9ea29b13ced87c4641e5aea10cfb89253.tar.gz
rust-97a7a3c9ea29b13ced87c4641e5aea10cfb89253.zip
Rollup merge of #98147 - est31:bootstrap_cfg_flag, r=Mark-Simulacrum
Make #[cfg(bootstrap)] not error in proc macros on later stages

As was discovered in https://github.com/rust-lang/rust/pull/93628#issuecomment-1154697627,
adding #[cfg(bootstrap)] to a rust-internal proc macro crate
would yield an unexpected cfg name error, at least on later
stages wher the bootstrap cfg arg wasn't set.

rustc already passes arguments to mark bootstrap as expected,
however the means of delivery through the RUSTFLAGS env var
is unable to reach proc macro crates, as described
in the issue linked in the code this commit touches.

This wouldn't be an issue for cfg args that get passed through
RUSTFLAGS, as they would never become *active* either, so
any usage of one of these flags in a proc macro's code would
legitimately yield a lint warning. But since dc30258,
rust takes extra measures to pass --cfg=bootstrap even in
proc macros, by passing it via the wrapper. Thus, we need
to send the flags to mark bootstrap as expected also from the
wrapper, so that #[cfg(bootstrap)] also works from proc macros.

I want to thank `Urgau` and `jplatte` for helping me find the cause of this. :heart:
Diffstat (limited to 'compiler/rustc_errors/src')
0 files changed, 0 insertions, 0 deletions