forked from GitHub/bdwgc-rust
881b5a5b7a19d3c9dbef6ce42a65c6a0e49789ce
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.183 to 0.2.184. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rust-lang/libc/releases">libc's releases</a>.</em></p> <blockquote> <h2>0.2.184</h2> <h3>MSRV</h3> <p>This release increases the MSRV of <code>libc</code> to 1.65. With this update, you can now always use the <code>core::ffi::c_*</code> types with <code>libc</code> definitions, since <code>libc</code> has been changed to reexport from <code>core</code> rather than redefining them. (This <em>usually</em> worked before but had edge cases.) (<a href="https://redirect.github.com/rust-lang/libc/pull/4972">#4972</a>)</p> <h3>Added</h3> <ul> <li>BSD: Add <code>IP_MINTTL</code> to bsd (<a href="https://redirect.github.com/rust-lang/libc/pull/5026">#5026</a>)</li> <li>Cygwin: Add <code>TIOCM_DSR</code> (<a href="https://redirect.github.com/rust-lang/libc/pull/5031">#5031</a>)</li> <li>FreeBSD: Added <code>xfile</code> structe and file descriptor types (<a href="https://redirect.github.com/rust-lang/libc/pull/5002">#5002</a>)</li> <li>Linux: Add CAN netlink bindings (<a href="https://redirect.github.com/rust-lang/libc/pull/5011">#5011</a>)</li> <li>Linux: Add <code>struct ethhdr</code> (<a href="https://redirect.github.com/rust-lang/libc/pull/4239">#4239</a>)</li> <li>Linux: Add <code>struct ifinfomsg</code> (<a href="https://redirect.github.com/rust-lang/libc/pull/5012">#5012</a>)</li> <li>Linux: Define <code>max_align_t</code> for riscv64 (<a href="https://redirect.github.com/rust-lang/libc/pull/5029">#5029</a>)</li> <li>NetBSD: Add missing <code>CLOCK_</code> constants (<a href="https://redirect.github.com/rust-lang/libc/pull/5020">#5020</a>)</li> <li>NuttX: Add <code>_SC_HOST_NAME_MAX</code> (<a href="https://redirect.github.com/rust-lang/libc/pull/5004">#5004</a>)</li> <li>VxWorks: Add <code>flock</code> and <code>F_*LCK</code> constants (<a href="https://redirect.github.com/rust-lang/libc/pull/4043">#4043</a>)</li> <li>WASI: Add all <code>_SC_*</code> sysconf constants (<a href="https://redirect.github.com/rust-lang/libc/pull/5023">#5023</a>)</li> </ul> <h3>Deprecated</h3> <p>The remaining fixed-width integer aliases, <code>__uint128_t</code>, <code>__uint128</code>, <code>__int128_t</code>, and <code>__int128</code>, have been deprecated. Use <code>i128</code> and <code>u128</code> instead. (<a href="https://redirect.github.com/rust-lang/libc/pull/4343">#4343</a>)</p> <h3>Fixed</h3> <ul> <li><strong>breaking</strong> Redox: Fix signal action constant types (<a href="https://redirect.github.com/rust-lang/libc/pull/5009">#5009</a>)</li> <li>EspIDF: Correct the value of <code>DT_*</code> constants (<a href="https://redirect.github.com/rust-lang/libc/pull/5034">#5034</a>)</li> <li>Redox: Fix locale values and add <code>RTLD_NOLOAD</code>, some TCP constants (<a href="https://redirect.github.com/rust-lang/libc/pull/5025">#5025</a>)</li> <li>Various: Use <code>Padding::new(<zeroed>)</code> rather than <code>Padding::uninit()</code> (<a href="https://redirect.github.com/rust-lang/libc/pull/5036">#5036</a>)</li> </ul> <h3>Changed</h3> <ul> <li><strong>potentially breaking</strong> Linux: Add new fields to <code>struct ptrace_syscall_info</code> (<a href="https://redirect.github.com/rust-lang/libc/pull/4966">#4966</a>)</li> <li>Re-export <code>core::ffi</code> integer types rather than redefining (<a href="https://redirect.github.com/rust-lang/libc/pull/5015">#5015</a>)</li> <li>Redox: Update <code>F_DUPFD</code>, <code>IP</code>, and <code>TCP</code> constants to match relibc (<a href="https://redirect.github.com/rust-lang/libc/pull/4990">#4990</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/rust-lang/libc/blob/0.2.184/CHANGELOG.md">libc's changelog</a>.</em></p> <blockquote> <h2><a href="https://github.com/rust-lang/libc/compare/0.2.183...0.2.184">0.2.184</a> - 2026-04-01</h2> <h3>MSRV</h3> <p>This release increases the MSRV of <code>libc</code> to 1.65. With this update, you can now always use the <code>core::ffi::c_*</code> types with <code>libc</code> definitions, since <code>libc</code> has been changed to reexport from <code>core</code> rather than redefining them. (This <em>usually</em> worked before but had edge cases.) (<a href="https://redirect.github.com/rust-lang/libc/pull/4972">#4972</a>)</p> <h3>Added</h3> <ul> <li>BSD: Add <code>IP_MINTTL</code> to bsd (<a href="https://redirect.github.com/rust-lang/libc/pull/5026">#5026</a>)</li> <li>Cygwin: Add <code>TIOCM_DSR</code> (<a href="https://redirect.github.com/rust-lang/libc/pull/5031">#5031</a>)</li> <li>FreeBSD: Added <code>xfile</code> structe and file descriptor types (<a href="https://redirect.github.com/rust-lang/libc/pull/5002">#5002</a>)</li> <li>Linux: Add CAN netlink bindings (<a href="https://redirect.github.com/rust-lang/libc/pull/5011">#5011</a>)</li> <li>Linux: Add <code>struct ethhdr</code> (<a href="https://redirect.github.com/rust-lang/libc/pull/4239">#4239</a>)</li> <li>Linux: Add <code>struct ifinfomsg</code> (<a href="https://redirect.github.com/rust-lang/libc/pull/5012">#5012</a>)</li> <li>Linux: Define <code>max_align_t</code> for riscv64 (<a href="https://redirect.github.com/rust-lang/libc/pull/5029">#5029</a>)</li> <li>NetBSD: Add missing <code>CLOCK_</code> constants (<a href="https://redirect.github.com/rust-lang/libc/pull/5020">#5020</a>)</li> <li>NuttX: Add <code>_SC_HOST_NAME_MAX</code> (<a href="https://redirect.github.com/rust-lang/libc/pull/5004">#5004</a>)</li> <li>VxWorks: Add <code>flock</code> and <code>F_*LCK</code> constants (<a href="https://redirect.github.com/rust-lang/libc/pull/4043">#4043</a>)</li> <li>WASI: Add all <code>_SC_*</code> sysconf constants (<a href="https://redirect.github.com/rust-lang/libc/pull/5023">#5023</a>)</li> </ul> <h3>Deprecated</h3> <p>The remaining fixed-width integer aliases, <code>__uint128_t</code>, <code>__uint128</code>, <code>__int128_t</code>, and <code>__int128</code>, have been deprecated. Use <code>i128</code> and <code>u128</code> instead. (<a href="https://redirect.github.com/rust-lang/libc/pull/4343">#4343</a>)</p> <h3>Fixed</h3> <ul> <li><strong>breaking</strong> Redox: Fix signal action constant types (<a href="https://redirect.github.com/rust-lang/libc/pull/5009">#5009</a>)</li> <li>EspIDF: Correct the value of <code>DT_*</code> constants (<a href="https://redirect.github.com/rust-lang/libc/pull/5034">#5034</a>)</li> <li>Redox: Fix locale values and add <code>RTLD_NOLOAD</code>, some TCP constants (<a href="https://redirect.github.com/rust-lang/libc/pull/5025">#5025</a>)</li> <li>Various: Use <code>Padding::new(<zeroed>)</code> rather than <code>Padding::uninit()</code> (<a href="https://redirect.github.com/rust-lang/libc/pull/5036">#5036</a>)</li> </ul> <h3>Changed</h3> <ul> <li><strong>potentially breaking</strong> Linux: Add new fields to <code>struct ptrace_syscall_info</code> (<a href="https://redirect.github.com/rust-lang/libc/pull/4966">#4966</a>)</li> <li>Re-export <code>core::ffi</code> integer types rather than redefining (<a href="https://redirect.github.com/rust-lang/libc/pull/5015">#5015</a>)</li> <li>Redox: Update <code>F_DUPFD</code>, <code>IP</code>, and <code>TCP</code> constants to match relibc (<a href="https://redirect.github.com/rust-lang/libc/pull/4990">#4990</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="b1fd610c7e"><code>b1fd610</code></a> chore: Release libc 0.2.184</li> <li><a href="f596819d7c"><code>f596819</code></a> ci: Don't enforce cargo-semver-checks</li> <li><a href="4645f60c3a"><code>4645f60</code></a> linux: update ptrace_syscall_info struct</li> <li><a href="14cbbec353"><code>14cbbec</code></a> types: Remove <code>Padding::uninit</code></li> <li><a href="b5dcda885f"><code>b5dcda8</code></a> pthread: Use <code>Padding::new(\<zeroed>)</code> rather than <code>Padding::uninit()</code></li> <li><a href="bbb1c5d350"><code>bbb1c5d</code></a> types: Add a <code>new</code> function to <code>Padding</code></li> <li><a href="df06e43309"><code>df06e43</code></a> Fix locale values and add RTLD_NOLOAD, some TCP constants</li> <li><a href="078f5c6b3c"><code>078f5c6</code></a> newlib/espidf: Move DT_* to espidf/mod.rs</li> <li><a href="d32b83db3c"><code>d32b83d</code></a> Add IP_MINTTL to bsd</li> <li><a href="939e0ec2a8"><code>939e0ec</code></a> Define max_align_t for riscv64-linux</li> <li>Additional commits viewable in <a href="https://github.com/rust-lang/libc/compare/0.2.183...0.2.184">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
bdwgc-rust
GlobalAlloc implementation for bdwgc, the conservative garbage collector.
This crate is for use cases in which developers need to integrate bdwgc into their programs written in Rust (e.g. writing a runtime library in Rust for their own programming language whose GC is done by bdwgc.)
Usage
See examples directory.
By default bdwgc is built with autotools. To build with cmake, enable the cmake feature:
cargo build --no-default-features --features cmake
License
Languages
Rust
81.8%
Nix
15.5%
Shell
2.7%