Skip to content

Commit faea183

Browse files
committed
FreeBSD: update gating of mcontext_t.mc_tlsbase
freebsd11 wasn't covered, meaning test failures on the 0.2 branch. Add freebsd11 to the pattern, and use `cfg(not(...))` rather than `cfg(freebsd15)`. (Ideally this would instead be encoded as something like `cfg(freebsd_least_15)`.) Fixes: 3d93bf5 ("freebsd: Limit mcontext_t::mc_tlsbase to FreeBSD 15") (backport <#4703>) (cherry picked from commit abbde1d)
1 parent 2b5dd79 commit faea183

File tree

1 file changed

+6
-4
lines changed
  • src/unix/bsd/freebsdlike/freebsd/x86_64

1 file changed

+6
-4
lines changed

src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ s_no_extra_traits! {
9898
}
9999

100100
#[repr(align(16))]
101-
#[non_exhaustive]
101+
#[cfg_attr(not(any(freebsd11, freebsd12, freebsd13, freebsd14)), non_exhaustive)]
102102
pub struct mcontext_t {
103103
pub mc_onstack: register_t,
104104
pub mc_rdi: register_t,
@@ -137,11 +137,13 @@ s_no_extra_traits! {
137137
pub mc_gsbase: register_t,
138138
pub mc_xfpustate: register_t,
139139
pub mc_xfpustate_len: register_t,
140-
#[cfg(any(freebsd12, freebsd13, freebsd14))]
140+
// freebsd < 15
141+
#[cfg(any(freebsd11, freebsd12, freebsd13, freebsd14))]
141142
pub mc_spare: [c_long; 4],
142-
#[cfg(freebsd15)]
143+
// freebsd >= 15
144+
#[cfg(not(any(freebsd11, freebsd12, freebsd13, freebsd14)))]
143145
pub mc_tlsbase: register_t,
144-
#[cfg(freebsd15)]
146+
#[cfg(not(any(freebsd11, freebsd12, freebsd13, freebsd14)))]
145147
pub mc_spare: [c_long; 3],
146148
}
147149
}

0 commit comments

Comments
 (0)