Skip to content

Conversation

@alexcrichton
Copy link
Member

This commit updates the standard library's dependency on libc from 0.2.178 to 0.2.179. This is intended to resolve a minor issue on the WASI targets in some niche situations where 0.2.178 had definitions which didn't actually exist and this caused issues in some compiler configurations related to dynamic linking.

This commit updates the standard library's dependency on libc from
0.2.178 to 0.2.179. This is intended to resolve a minor issue on the
WASI targets in some niche situations where 0.2.178 had definitions
which didn't actually exist and this caused issues in some compiler
configurations related to dynamic linking.
@rustbot
Copy link
Collaborator

rustbot commented Jan 5, 2026

These commits modify the library/Cargo.lock file. Unintentional changes to library/Cargo.lock can be introduced when switching branches and rebasing PRs.

If this was unintentional then you should revert the changes before this PR is merged.
Otherwise, you can ignore this comment.

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Jan 5, 2026
@rustbot
Copy link
Collaborator

rustbot commented Jan 5, 2026

r? @Mark-Simulacrum

rustbot has assigned @Mark-Simulacrum.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@Mark-Simulacrum
Copy link
Member

@bors r+

@bors
Copy link
Collaborator

bors commented Jan 5, 2026

📌 Commit 24d5a0b has been approved by Mark-Simulacrum

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jan 5, 2026
Zalathar added a commit to Zalathar/rust that referenced this pull request Jan 6, 2026
…imulacrum

Update libc dependency of std

This commit updates the standard library's dependency on libc from 0.2.178 to 0.2.179. This is intended to resolve a minor issue on the WASI targets in some niche situations where 0.2.178 had definitions which didn't actually exist and this caused issues in some compiler configurations related to dynamic linking.
bors added a commit that referenced this pull request Jan 6, 2026
Rollup of 8 pull requests

Successful merges:

 - #144113 (Impls and impl items inherit `dead_code` lint level of the corresponding traits and trait items)
 - #149880 (rustc_codegen_llvm: update alignment for double on AIX)
 - #150668 (Unix implementation for stdio set/take/replace)
 - #150670 (THIR pattern building: Move all `thir::Pat` creation into `rustc_mir_build::thir::pattern`)
 - #150695 (MGCA: pretty printing for struct expressions and tuple calls )
 - #150698 (Improve comment clarity in candidate_may_shadow)
 - #150706 (Update wasm-component-ld)
 - #150710 (Update libc dependency of std)

r? `@ghost`
`@rustbot` modify labels: rollup
@Zalathar
Copy link
Member

Zalathar commented Jan 6, 2026

Possibly failed in rollup? #150718 (comment)

@bors r-
@bors try jobs=dist-ohos-armv7

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jan 6, 2026
@rust-bors

This comment has been minimized.

rust-bors bot added a commit that referenced this pull request Jan 6, 2026
Update libc dependency of std

try-job: dist-ohos-armv7
@rust-log-analyzer
Copy link
Collaborator

The job dist-ohos-armv7 failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)
   Compiling addr2line v0.25.1
[RUSTC-TIMING] addr2line test:false 0.690
[RUSTC-TIMING] gimli test:false 4.333
[RUSTC-TIMING] object test:false 5.264
error[E0609]: no field `st_atime` on type `&libc::stat`
   --> /rustc/8a17c49c0099407eb78662453e7121b2370d104f/library/std/src/os/linux/fs.rs:370:30
    |
370 |         file_attr.as_inner().st_atime as i64
    |                              ^^^^^^^^ unknown field
    |
help: a field with a similar name exists
    |
370 -         file_attr.as_inner().st_atime as i64
370 +         file_attr.as_inner().st_atim as i64
    |

error[E0609]: no field `st_atime_nsec` on type `&libc::stat`
   --> /rustc/8a17c49c0099407eb78662453e7121b2370d104f/library/std/src/os/linux/fs.rs:373:36
    |
373 |         self.as_inner().as_inner().st_atime_nsec as i64
    |                                    ^^^^^^^^^^^^^ unknown field
    |
    = note: available fields are: `st_dev`, `st_mode`, `st_nlink`, `st_uid`, `st_gid` ... and 8 others

error[E0609]: no field `st_mtime` on type `&libc::stat`
   --> /rustc/8a17c49c0099407eb78662453e7121b2370d104f/library/std/src/os/linux/fs.rs:381:30
    |
381 |         file_attr.as_inner().st_mtime as i64
    |                              ^^^^^^^^ unknown field
    |
help: a field with a similar name exists
    |
381 -         file_attr.as_inner().st_mtime as i64
381 +         file_attr.as_inner().st_mtim as i64
    |

error[E0609]: no field `st_mtime_nsec` on type `&libc::stat`
   --> /rustc/8a17c49c0099407eb78662453e7121b2370d104f/library/std/src/os/linux/fs.rs:384:36
    |
384 |         self.as_inner().as_inner().st_mtime_nsec as i64
    |                                    ^^^^^^^^^^^^^ unknown field
    |
    = note: available fields are: `st_dev`, `st_mode`, `st_nlink`, `st_uid`, `st_gid` ... and 8 others

error[E0609]: no field `st_ctime` on type `&libc::stat`
   --> /rustc/8a17c49c0099407eb78662453e7121b2370d104f/library/std/src/os/linux/fs.rs:392:30
    |
392 |         file_attr.as_inner().st_ctime as i64
    |                              ^^^^^^^^ unknown field
    |
help: a field with a similar name exists
    |
392 -         file_attr.as_inner().st_ctime as i64
392 +         file_attr.as_inner().st_ctim as i64
    |

error[E0609]: no field `st_ctime_nsec` on type `&libc::stat`
   --> /rustc/8a17c49c0099407eb78662453e7121b2370d104f/library/std/src/os/linux/fs.rs:395:36
    |
395 |         self.as_inner().as_inner().st_ctime_nsec as i64
    |                                    ^^^^^^^^^^^^^ unknown field
    |
    = note: available fields are: `st_dev`, `st_mode`, `st_nlink`, `st_uid`, `st_gid` ... and 8 others

error: cannot construct `timespec` with struct literal syntax due to private fields
  --> /rustc/8a17c49c0099407eb78662453e7121b2370d104f/library/std/src/sys/pal/unix/time.rs:11:5
   |
11 |     libc::timespec { tv_sec: <libc::time_t>::MAX, tv_nsec: 1_000_000_000 - 1 };
   |     ^^^^^^^^^^^^^^
   |
   = note: ...and other private field `__pad0` that was not provided

error: cannot construct `timespec` with struct literal syntax due to private fields
   --> /rustc/8a17c49c0099407eb78662453e7121b2370d104f/library/std/src/sys/pal/unix/time.rs:208:14
    |
208 |         Some(libc::timespec {
    |              ^^^^^^^^^^^^^^
    |
    = note: ...and other private field `__pad0` that was not provided

error[E0609]: no field `st_mtime` on type `libc::stat`
   --> /rustc/8a17c49c0099407eb78662453e7121b2370d104f/library/std/src/sys/fs/unix.rs:633:35
    |
633 |         SystemTime::new(self.stat.st_mtime as i64, self.stat.st_mtime_nsec as i64)
    |                                   ^^^^^^^^ unknown field
    |
help: a field with a similar name exists
    |
633 -         SystemTime::new(self.stat.st_mtime as i64, self.stat.st_mtime_nsec as i64)
633 +         SystemTime::new(self.stat.st_mtim as i64, self.stat.st_mtime_nsec as i64)
    |

error[E0609]: no field `st_mtime_nsec` on type `libc::stat`
   --> /rustc/8a17c49c0099407eb78662453e7121b2370d104f/library/std/src/sys/fs/unix.rs:633:62
    |
633 |         SystemTime::new(self.stat.st_mtime as i64, self.stat.st_mtime_nsec as i64)
    |                                                              ^^^^^^^^^^^^^ unknown field
    |
    = note: available fields are: `st_dev`, `st_mode`, `st_nlink`, `st_uid`, `st_gid` ... and 8 others

error[E0609]: no field `st_atime` on type `libc::stat`
   --> /rustc/8a17c49c0099407eb78662453e7121b2370d104f/library/std/src/sys/fs/unix.rs:668:35
    |
668 |         SystemTime::new(self.stat.st_atime as i64, self.stat.st_atime_nsec as i64)
    |                                   ^^^^^^^^ unknown field
    |
help: a field with a similar name exists
    |
668 -         SystemTime::new(self.stat.st_atime as i64, self.stat.st_atime_nsec as i64)
668 +         SystemTime::new(self.stat.st_atim as i64, self.stat.st_atime_nsec as i64)
    |

error[E0609]: no field `st_atime_nsec` on type `libc::stat`
   --> /rustc/8a17c49c0099407eb78662453e7121b2370d104f/library/std/src/sys/fs/unix.rs:668:62
    |
668 |         SystemTime::new(self.stat.st_atime as i64, self.stat.st_atime_nsec as i64)
    |                                                              ^^^^^^^^^^^^^ unknown field
    |
    = note: available fields are: `st_dev`, `st_mode`, `st_nlink`, `st_uid`, `st_gid` ... and 8 others

error: cannot construct `timespec` with struct literal syntax due to private fields
    --> /rustc/8a17c49c0099407eb78662453e7121b2370d104f/library/std/src/sys/fs/unix.rs:1865:20
     |
1865 |         None => Ok(libc::timespec { tv_sec: 0, tv_nsec: libc::UTIME_OMIT as _ }),
     |                    ^^^^^^^^^^^^^^
     |
     = note: ...and other private field `__pad0` that was not provided

error: cannot construct `timespec` with struct literal syntax due to private fields
   --> /rustc/8a17c49c0099407eb78662453e7121b2370d104f/library/std/src/sys/thread/unix.rs:532:26
    |
532 |             let mut ts = libc::timespec {
    |                          ^^^^^^^^^^^^^^
    |
    = note: ...and other private field `__pad0` that was not provided

For more information about this error, try `rustc --explain E0609`.
[RUSTC-TIMING] std test:false 3.678
error: could not compile `std` (lib) due to 14 previous errors
Bootstrap failed while executing `dist --host=armv7-unknown-linux-ohos --target armv7-unknown-linux-ohos`

@rust-bors
Copy link
Contributor

rust-bors bot commented Jan 6, 2026

💔 Test for 8a17c49 failed: CI. Failed jobs:

@alexcrichton
Copy link
Member Author

Oop thanks for spotting that! I'll let the ohos maintainers or another interested party take care of that.

@rustbot rustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Jan 6, 2026
@alexcrichton alexcrichton deleted the update-libc branch January 6, 2026 15:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

T-libs Relevant to the library team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants