Repository navigation
Conversation
This comment has been minimized.
This comment has been minimized.
|
This indeed snuck under the radar. LGTM, but could you put some of the context from the PR description into the commit message? Since the description doesn't make it to history. Also I don't know if there's a way to test this target, but if so then it would be nice to add to #5209 |
40d661f to
d25b361
Compare
This comment has been minimized.
This comment has been minimized.
The 0.2 backport of rust-lang#5132 also carried over rust-lang#5061's `stat` (stable-declined), breaking std on ESP-IDF and RTEMS (rust-lang/rust#164555) and rustix 0.38. Restore the 0.2 names, keeping the 0.2.190 layout via private padding (correct for 64-bit `time_t`). Also let horizon use its own `stat` again and drop the unused `newlib/generic.rs`.
d25b361 to
440b510
Compare
|
Thanks! I hope the build failure for Solaris is just flaky and not specific to this PR? |
|
Indeed, |
I have something similar to
I think before even looking at Will update with a link to the CI shortly... |
The
[0.2]backport of #5132 (#5454, commit 27fe099) (accidentally?) also carried over the newlibstatfrom #5061, which wasstable-declined.Renaming
st_{a,m,c}timetost_{a,m,c}timbroke ESP-IDF and RTEMS, in that STD no longer builds since its bump to 0.2.191 (rust-lang/rust#164555, rust-lang/rust#164719). And neither doesrustix0.38 by the way.This PR restores the 0.2 field names.
Additionally, I had to introduce a few extra "pad" fields, so that the 0.2.190 layout is kept, which is the correct one for 64-bit
time_t, because the old struct incorrectly placedst_blksize,st_blocksandst_spare44 bytes too early.(The wrong
st_blksizeandst_blockswere probably never found as they are not really used / read much in the ESP-IDF Rust land, to my knowledge.)Also:
statagain (the generic one was shadowing it)newlib/generic.rsas it is seemingly unusedNOTE: A lot of the research on the topic and the final fix was done/suggested by an LLM. Mentioning because I think the rust-lang policy requires it.