Since #518 (I think), the cfg(proc_macro_span) eponymous prob file includes a mention to Span::local_file(). Such API is only available on rustc >= 1.88.0.
So, for 1.X.0-nightly "versioned nightly" (i.e., versioned rustc/cargo + RUSTC_BOOTSTRAP=1) when X < 88, compilation of the prob file fails, disabling all of proc_macro_span's unstable API altogether.
Among other things, this makes Span::join() (when wrapping ::proc-macro) fail to produce Somes, when it used to for proc-macro2 = "<1.0.100" versions of it: the regression.
At work we will probably make do with a toolchain bump anyways (and with a so-pinned proc-macro2 dependency in the meantime), but I thought it could be worth pointing out anyways, should others stumble into this 🙂
Since #518 (I think), the
cfg(proc_macro_span)eponymous prob file includes a mention toSpan::local_file(). Such API is only available onrustc >= 1.88.0.So, for
1.X.0-nightly"versioned nightly" (i.e., versionedrustc/cargo+RUSTC_BOOTSTRAP=1) whenX < 88, compilation of the prob file fails, disabling all ofproc_macro_span's unstable API altogether.Among other things, this makes
Span::join()(when wrapping::proc-macro) fail to produceSomes, when it used to forproc-macro2 = "<1.0.100"versions of it: the regression.At work we will probably make do with a toolchain bump anyways (and with a so-pinned
proc-macro2dependency in the meantime), but I thought it could be worth pointing out anyways, should others stumble into this 🙂