Conversation
|
Tests are failing because: Let's just add a dummy In general this looks good. Could you clean up the commit history to avoid having reverts and so on if you don't mind? Thanks. |
|
Also, in the commit messages and PR title, please use |
b313dbd to
d1ba116
Compare
d1ba116 to
bf5817f
Compare
Oh, I was wondering why this was compiling before, I just assumed it was using c23 like I was, but regardless, I fixed this now.
I squashed all the commits except the code move commit because it makes the diffs nicer. |
| int32_t va_list_test2(int32_t count, ...); | ||
|
|
||
| void va_list_fn_ptrs(int32_t (*fn1)(int32_t count, ...), | ||
| int32_t (*fn2)(int32_t count), |
There was a problem hiding this comment.
It looks like when used in function pointer the dotdotdot version does not emit the va args dots in the C version. Is this intended?
There was a problem hiding this comment.
I added this test to highlight the existing limitation.
I had attempted to address it with #969 but there appears to have been some miscommunication.
Updates the requirements on [cbindgen](https://github.com/mozilla/cbindgen) to permit the latest version. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/mozilla/cbindgen/blob/master/CHANGES">cbindgen's changelog</a>.</em></p> <blockquote> <h1>0.27.0</h1> <pre><code> * Revert: The `Config` struct now has a private member. * Allow users to specify a crate version for bindings generation ([#901](mozilla/cbindgen#901)). * Update MSRV to 1.74 ([#912](mozilla/cbindgen#912), [#987](mozilla/cbindgen#987)). * Support #[deprecated] on enum variants ([#933](mozilla/cbindgen#933)). * Support integrating the package_version information in a header file comment ([#939](mozilla/cbindgen#939)). * Add a language backend ([#942](mozilla/cbindgen#942)). * Support generics with defaulted args ([#959](mozilla/cbindgen#959)). * Add `VaList` compatibility ([#970](mozilla/cbindgen#970)). </code></pre> <h1>0.26.0</h1> <pre><code> * Fix swapping of `>>=` and `<<=` in constants. * Add support for #[deprecated] ([#860](mozilla/cbindgen#860)). * Built-in support for bitflags 2.0. * Support for "C-unwind" ABI. * Generate bindings for non-public extern items if they are #[no_mangle]. </code></pre> <h2>0.25.0</h2> <pre><code> * Re-release of yanked 0.24.6 as a major release * Update MSRV to 1.57 * Support variadic arguments (`...`) ([#805](mozilla/cbindgen#805)) * Add --depfile option ([#820](mozilla/cbindgen#820)) * Breaking changes: The `Config` struct now has a private member. </code></pre> <h2>0.24.6 (YANKED: depfile option was breaking, see <a href="https://redirect.github.com/mozilla/cbindgen/issues/841">#841</a>)</h2> <pre><code> * Update MSRV to 1.57 * Support variadic arguments (`...`) ([#805](mozilla/cbindgen#805)) * Add --depfile option ([#820](mozilla/cbindgen#820)) </code></pre> <h2>0.24.5</h2> <pre><code> * Don't enforce tempfile version. </code></pre> <h2>0.24.4</h2> <pre><code> * Move expand infinite recursion fix ([#799](mozilla/cbindgen#799)) * Add with_cpp_compat to the builder ([#796](mozilla/cbindgen#796)) * Handle never type in return position consistently ([#780](mozilla/cbindgen#780)) * Fix warnings ([#816](mozilla/cbindgen#816), [#819](mozilla/cbindgen#819)) * Updated documentation ([#788](mozilla/cbindgen#788), [#791](mozilla/cbindgen#791), [#792](mozilla/cbindgen#792), [#810](mozilla/cbindgen#810), [#823](mozilla/cbindgen#823)) </code></pre> <h2>0.24.3</h2> <pre><code> * Make struct expressions correctly generated through typedefs ([#768](mozilla/cbindgen#768)). </code></pre> <h2>0.24.2</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/mozilla/cbindgen/commit/58c6156b0d91e82abb03c26187b8d18fa4345ce0"><code>58c6156</code></a> Bump MSRV again for clap.</li> <li><a href="https://github.com/mozilla/cbindgen/commit/103a8de0ac1ac311d54843acdfc10ee8c203a3ba"><code>103a8de</code></a> Cargo update and version bump.</li> <li><a href="https://github.com/mozilla/cbindgen/commit/67cb560430cf91fecdd402cd1239d0a51baff634"><code>67cb560</code></a> Update CHANGES since v0.26.0</li> <li><a href="https://github.com/mozilla/cbindgen/commit/316298182ebf508240c95ddf9943556b2fb546e1"><code>3162981</code></a> Output condition for globals.</li> <li><a href="https://github.com/mozilla/cbindgen/commit/e469e44c0027f4ca039a4556f6062c0ba343a5b4"><code>e469e44</code></a> Add missing parens to log message</li> <li><a href="https://github.com/mozilla/cbindgen/commit/3cbb637bbf16c7378ce4d6cb4b73e5d2d2bd33fa"><code>3cbb637</code></a> Update cython expectations from the previous patch.</li> <li><a href="https://github.com/mozilla/cbindgen/commit/785e066e03b0e22a32c31e9adab78a18f6ce195b"><code>785e066</code></a> Fix variadic arguments when used in function pointer</li> <li><a href="https://github.com/mozilla/cbindgen/commit/aa8ea654e156fd1b8e5b1b755c7b43fe4ea81331"><code>aa8ea65</code></a> deps: Update syn to 2.0</li> <li><a href="https://github.com/mozilla/cbindgen/commit/9f632843b8b9dacbdc7a153868a4a9546e196e2e"><code>9f63284</code></a> Generalize Item to expose documentation and generic params</li> <li><a href="https://github.com/mozilla/cbindgen/commit/1dda6162e53df57cb1769e9a6f942f6de839f50b"><code>1dda616</code></a> Used documented method of specifying variadic arguments</li> <li>Additional commits viewable in <a href="https://github.com/mozilla/cbindgen/compare/0.26.0...v0.27.0">compare view</a></li> </ul> </details> <br /> 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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Updates the requirements on [cbindgen](https://github.com/mozilla/cbindgen) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/mozilla/cbindgen/releases">cbindgen's releases</a>.</em></p> <blockquote> <h1>0.28.0</h1> <ul> <li>Parse unsafe attributes in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1020">mozilla/cbindgen#1020</a></li> <li>Fix local override of enum prefix-with-name by jsgf in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1006">mozilla/cbindgen#1006</a></li> <li>Add rename-all=prefix in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1021">mozilla/cbindgen#1021</a></li> <li>ir: add support for UnsafeCell and SyncUnsafeCell by alekitto in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1003">mozilla/cbindgen#1003</a></li> <li>Implement mangling for arrays in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1022">mozilla/cbindgen#1022</a></li> <li>Fix: Ignore <code>CARGO_BUILD_TARGET</code> in tests by bryango in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1010">mozilla/cbindgen#1010</a></li> <li>Newline for each field for constexpr field constants by youknowone in <a href="https://redirect.github.com/mozilla/cbindgen/pull/988">mozilla/cbindgen#988</a></li> <li>Fix clippy warnings by youknowone in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1026">mozilla/cbindgen#1026</a></li> <li>Add aarch64/arm64 to CI by NickeZ in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1036">mozilla/cbindgen#1036</a></li> <li>Add <code>unstable_ir</code> feature flag that makes the ir pub by heesooy in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1011">mozilla/cbindgen#1011</a></li> <li>Support generated a symbols file by TheElectronWill in <a href="https://redirect.github.com/mozilla/cbindgen/pull/916">mozilla/cbindgen#916</a></li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/mozilla/cbindgen/blob/master/CHANGES">cbindgen's changelog</a>.</em></p> <blockquote> <h1>0.28.0</h1> <pre><code> * Parse unsafe attributes in mozilla/cbindgen#1020 * Fix local override of enum prefix-with-name by jsgf in mozilla/cbindgen#1006 * Add rename-all=prefix in mozilla/cbindgen#1021 * ir: add support for UnsafeCell and SyncUnsafeCell by alekitto in mozilla/cbindgen#1003 * Implement mangling for arrays in mozilla/cbindgen#1022 * Fix: Ignore `CARGO_BUILD_TARGET` in tests by bryango in mozilla/cbindgen#1010 * Newline for each field for constexpr field constants by youknowone in mozilla/cbindgen#988 * Fix clippy warnings by youknowone in mozilla/cbindgen#1026 * Add aarch64/arm64 to CI by NickeZ in mozilla/cbindgen#1036 * Add `unstable_ir` feature flag that makes the ir pub by heesooy in mozilla/cbindgen#1011 * Support generated a symbols file by TheElectronWill in mozilla/cbindgen#916 </code></pre> <h1>0.27.0</h1> <pre><code> * Revert: The `Config` struct now has a private member. * Allow users to specify a crate version for bindings generation ([#901](mozilla/cbindgen#901)). * Update MSRV to 1.74 ([#912](mozilla/cbindgen#912), [#987](mozilla/cbindgen#987)). * Support #[deprecated] on enum variants ([#933](mozilla/cbindgen#933)). * Support integrating the package_version information in a header file comment ([#939](mozilla/cbindgen#939)). * Add a language backend ([#942](mozilla/cbindgen#942)). * Support generics with defaulted args ([#959](mozilla/cbindgen#959)). * Add `VaList` compatibility ([#970](mozilla/cbindgen#970)). </code></pre> <h1>0.26.0</h1> <pre><code> * Fix swapping of `>>=` and `<<=` in constants. * Add support for #[deprecated] ([#860](mozilla/cbindgen#860)). * Built-in support for bitflags 2.0. * Support for "C-unwind" ABI. * Generate bindings for non-public extern items if they are #[no_mangle]. </code></pre> <h2>0.25.0</h2> <pre><code> * Re-release of yanked 0.24.6 as a major release * Update MSRV to 1.57 * Support variadic arguments (`...`) ([#805](mozilla/cbindgen#805)) * Add --depfile option ([#820](mozilla/cbindgen#820)) * Breaking changes: The `Config` struct now has a private member. </code></pre> <h2>0.24.6 (YANKED: depfile option was breaking, see <a href="https://redirect.github.com/mozilla/cbindgen/issues/841">#841</a>)</h2> <pre><code> * Update MSRV to 1.57 * Support variadic arguments (`...`) ([#805](mozilla/cbindgen#805)) * Add --depfile option ([#820](mozilla/cbindgen#820)) </code></pre> <h2>0.24.5</h2> <pre><code> * Don't enforce tempfile version. </code></pre> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/mozilla/cbindgen/commit/bd78bbe59b10eda6ef1255e4acda95c56c6d0279"><code>bd78bbe</code></a> Release 0.28.0</li> <li><a href="https://github.com/mozilla/cbindgen/commit/8ca9c4c20ff9ca59a3c4f0b068ce3a7da2e02e9e"><code>8ca9c4c</code></a> tests: Fix symbol file and tests.</li> <li><a href="https://github.com/mozilla/cbindgen/commit/152f91dee070b1ebc28505b908066c9c418ed50e"><code>152f91d</code></a> Appease clippy.</li> <li><a href="https://github.com/mozilla/cbindgen/commit/70b9d7a98084c39dbb5d0f0115d4e5917e2c8f6c"><code>70b9d7a</code></a> tests: Run rustfmt.</li> <li><a href="https://github.com/mozilla/cbindgen/commit/87afbf9e01ae8d9190638d4b347676ff7e282d4f"><code>87afbf9</code></a> Add a way to generate a list of symbols for dynamic linkage, resolves <a href="https://redirect.github.com/mozilla/cbindgen/issues/907">#907</a></li> <li><a href="https://github.com/mozilla/cbindgen/commit/80c50c643a453bd396331b4a8eb17a47f7c6c6b1"><code>80c50c6</code></a> Add <code>unstable_ir</code> feature flag that makes the ir pub</li> <li><a href="https://github.com/mozilla/cbindgen/commit/e82815e99a96d9510316855583d4fef094396f10"><code>e82815e</code></a> Refactor arm64 build to matrix strategy</li> <li><a href="https://github.com/mozilla/cbindgen/commit/a5e1443a4503826036bfaa6a349fc0b05d188d61"><code>a5e1443</code></a> Add aarch64/arm64 to CI</li> <li><a href="https://github.com/mozilla/cbindgen/commit/b9b8f8878ac272935193c449066b88c0cb94ced2"><code>b9b8f88</code></a> Fix clippy warnings</li> <li><a href="https://github.com/mozilla/cbindgen/commit/89a9faa97cc267e90fc95a1cc6177a001aed5b51"><code>89a9faa</code></a> newlines for constexpr</li> <li>Additional commits viewable in <a href="https://github.com/mozilla/cbindgen/compare/v0.27.0...0.28.0">compare view</a></li> </ul> </details> <br /> 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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Updates the requirements on [cbindgen](https://github.com/mozilla/cbindgen) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/mozilla/cbindgen/releases">cbindgen's releases</a>.</em></p> <blockquote> <h1>0.29.0</h1> <ul> <li>Support no-export annotation for statics and functions.</li> <li>Fixed conditional fields of constexpr literal structs</li> <li>Add rename rule for generated associated constant</li> <li>Upgrade heck to 0.5</li> <li>Add support for an optional nullable attribute</li> <li>docs.md: Fix deprecated_with_note and deprecated_variant_with_note being spelled as 'notes'</li> <li>Fix generic with "void" default</li> <li>Fixed error generation of structures using the keyword as inside arrays</li> <li>Added test for unsafe(no_mangle) attribute</li> <li>Fixed handling of trait methods containing the unsafe attribute</li> <li>Rename -Zparse-only</li> </ul> <h1>0.28.0</h1> <ul> <li>Parse unsafe attributes in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1020">mozilla/cbindgen#1020</a></li> <li>Fix local override of enum prefix-with-name by jsgf in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1006">mozilla/cbindgen#1006</a></li> <li>Add rename-all=prefix in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1021">mozilla/cbindgen#1021</a></li> <li>ir: add support for UnsafeCell and SyncUnsafeCell by alekitto in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1003">mozilla/cbindgen#1003</a></li> <li>Implement mangling for arrays in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1022">mozilla/cbindgen#1022</a></li> <li>Fix: Ignore <code>CARGO_BUILD_TARGET</code> in tests by bryango in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1010">mozilla/cbindgen#1010</a></li> <li>Newline for each field for constexpr field constants by youknowone in <a href="https://redirect.github.com/mozilla/cbindgen/pull/988">mozilla/cbindgen#988</a></li> <li>Fix clippy warnings by youknowone in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1026">mozilla/cbindgen#1026</a></li> <li>Add aarch64/arm64 to CI by NickeZ in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1036">mozilla/cbindgen#1036</a></li> <li>Add <code>unstable_ir</code> feature flag that makes the ir pub by heesooy in <a href="https://redirect.github.com/mozilla/cbindgen/pull/1011">mozilla/cbindgen#1011</a></li> <li>Support generated a symbols file by TheElectronWill in <a href="https://redirect.github.com/mozilla/cbindgen/pull/916">mozilla/cbindgen#916</a></li> </ul> <h1>0.27.0</h1> <ul> <li>Revert: The <code>Config</code> struct now has a private member.</li> <li>Allow users to specify a crate version for bindings generation (<a href="https://redirect.github.com/mozilla/cbindgen/issues/901">#901</a>).</li> <li>Update MSRV to 1.74 (<a href="https://redirect.github.com/mozilla/cbindgen/issues/912">#912</a>, <a href="https://redirect.github.com/mozilla/cbindgen/issues/987">#987</a>).</li> <li>Support #[deprecated] on enum variants (<a href="https://redirect.github.com/mozilla/cbindgen/issues/933">#933</a>).</li> <li>Support integrating the package_version information in a header file comment (<a href="https://redirect.github.com/mozilla/cbindgen/issues/939">#939</a>).</li> <li>Add a language backend (<a href="https://redirect.github.com/mozilla/cbindgen/issues/942">#942</a>).</li> <li>Support generics with defaulted args (<a href="https://redirect.github.com/mozilla/cbindgen/issues/959">#959</a>).</li> <li>Add <code>VaList</code> compatibility (<a href="https://redirect.github.com/mozilla/cbindgen/issues/970">#970</a>).</li> </ul> <h1>0.26.0</h1> <ul> <li>Fix swapping of <code>>>=</code> and <code><<=</code> in constants.</li> <li>Add support for #[deprecated] (<a href="https://redirect.github.com/mozilla/cbindgen/issues/860">#860</a>).</li> <li>Built-in support for bitflags 2.0.</li> <li>Support for "C-unwind" ABI.</li> <li>Generate bindings for non-public extern items if they are #[no_mangle].</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/mozilla/cbindgen/blob/master/CHANGES">cbindgen's changelog</a>.</em></p> <blockquote> <h1>0.29.0</h1> <pre><code> * Support no-export annotation for statics and functions. * Fixed conditional fields of constexpr literal structs * Add rename rule for generated associated constant * Upgrade heck to 0.5 * Add support for an optional nullable attribute * docs.md: Fix deprecated_with_note and deprecated_variant_with_note being spelled as 'notes' * Fix generic with "void" default * Fixed error generation of structures using the keyword as inside arrays * Added test for unsafe(no_mangle) attribute * Fixed handling of trait methods containing the unsafe attribute * Rename -Zparse-only </code></pre> <h1>0.28.0</h1> <pre><code> * Parse unsafe attributes in mozilla/cbindgen#1020 * Fix local override of enum prefix-with-name by jsgf in mozilla/cbindgen#1006 * Add rename-all=prefix in mozilla/cbindgen#1021 * ir: add support for UnsafeCell and SyncUnsafeCell by alekitto in mozilla/cbindgen#1003 * Implement mangling for arrays in mozilla/cbindgen#1022 * Fix: Ignore `CARGO_BUILD_TARGET` in tests by bryango in mozilla/cbindgen#1010 * Newline for each field for constexpr field constants by youknowone in mozilla/cbindgen#988 * Fix clippy warnings by youknowone in mozilla/cbindgen#1026 * Add aarch64/arm64 to CI by NickeZ in mozilla/cbindgen#1036 * Add `unstable_ir` feature flag that makes the ir pub by heesooy in mozilla/cbindgen#1011 * Support generated a symbols file by TheElectronWill in mozilla/cbindgen#916 </code></pre> <h1>0.27.0</h1> <pre><code> * Revert: The `Config` struct now has a private member. * Allow users to specify a crate version for bindings generation ([#901](mozilla/cbindgen#901)). * Update MSRV to 1.74 ([#912](mozilla/cbindgen#912), [#987](mozilla/cbindgen#987)). * Support #[deprecated] on enum variants ([#933](mozilla/cbindgen#933)). * Support integrating the package_version information in a header file comment ([#939](mozilla/cbindgen#939)). * Add a language backend ([#942](mozilla/cbindgen#942)). * Support generics with defaulted args ([#959](mozilla/cbindgen#959)). * Add `VaList` compatibility ([#970](mozilla/cbindgen#970)). </code></pre> <h1>0.26.0</h1> <pre><code> * Fix swapping of `>>=` and `<<=` in constants. * Add support for #[deprecated] ([#860](mozilla/cbindgen#860)). * Built-in support for bitflags 2.0. * Support for "C-unwind" ABI. * Generate bindings for non-public extern items if they are #[no_mangle]. </code></pre> <h2>0.25.0</h2> <pre><code> * Re-release of yanked 0.24.6 as a major release </code></pre> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/mozilla/cbindgen/commit/802154245edebe6bd031e473737da4c2fbdea8a3"><code>8021542</code></a> Release 0.29.0</li> <li><a href="https://github.com/mozilla/cbindgen/commit/f3a0ecd2a9242e7452acba475c6277e5c5f94079"><code>f3a0ecd</code></a> Support no-export annotation for statics and functions.</li> <li><a href="https://github.com/mozilla/cbindgen/commit/14fa2d0669fb80adb3e5a45915af73dc6e9c64c7"><code>14fa2d0</code></a> conditional fields of constexpr literal structs</li> <li><a href="https://github.com/mozilla/cbindgen/commit/021f3f3a422f2fe4a13db644277515fac5af0c16"><code>021f3f3</code></a> Add LiteralStructField</li> <li><a href="https://github.com/mozilla/cbindgen/commit/4b2396dabf630e3372089a68cdbdb73249a745ed"><code>4b2396d</code></a> Github action: Add aarch64 to deploy</li> <li><a href="https://github.com/mozilla/cbindgen/commit/2320ac4296b91257f0d3d502b28f5e319e006a2b"><code>2320ac4</code></a> Add rename rule for generated associated constant</li> <li><a href="https://github.com/mozilla/cbindgen/commit/5ac9dc046b8ebd06ae0826d92f4c3d8781f263f3"><code>5ac9dc0</code></a> Upgrade heck to 0.5</li> <li><a href="https://github.com/mozilla/cbindgen/commit/9f9da30c60a74abf843c41a56a6ec9fb3328fbf7"><code>9f9da30</code></a> Add support for an optional nullable attribute</li> <li><a href="https://github.com/mozilla/cbindgen/commit/36b9f0df42a7c686b897aef29b19fefd2d9950df"><code>36b9f0d</code></a> docs.md: Fix deprecated_with_note and deprecated_variant_with_note being spel...</li> <li><a href="https://github.com/mozilla/cbindgen/commit/0328601dc1a827d761913e1e08ccb3295c5b0c8a"><code>0328601</code></a> Fix generic with "void" default</li> <li>Additional commits viewable in <a href="https://github.com/mozilla/cbindgen/compare/0.28.0...0.29.0">compare view</a></li> </ul> </details> <br /> 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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
v0.27.0
* Revert: The `Config` struct now has a private member.
* Allow users to specify a crate version for bindings generation (mozilla#901).
* Update MSRV to 1.74 (mozilla#912, mozilla#987).
* Support #[deprecated] on enum variants (mozilla#933).
* Support integrating the package_version information in a header file comment (mozilla#939).
* Add a language backend (mozilla#942).
* Support generics with defaulted args (mozilla#959).
* Add `VaList` compatibility (mozilla#970).
# Conflicts:
# src/bindgen/bindings.rs
# src/bindgen/cdecl.rs
# src/bindgen/config.rs
# src/bindgen/ir/constant.rs
# src/bindgen/ir/documentation.rs
# src/bindgen/ir/enumeration.rs
# src/bindgen/ir/function.rs
# src/bindgen/ir/opaque.rs
# src/bindgen/ir/structure.rs
# src/bindgen/ir/typedef.rs
# src/bindgen/ir/union.rs
# src/main.rs
From what I can tell a
va_listshould be created by callingva_startand no documentation that I could find specifies the use ofva_listas an argument explicitly.Assuming this works, I imagine that some compilers happen to implement
va_listand...the same, but...seems the be the specified way.I haven't done any runtime testing of these changes, so if this is wrong I'd love to know why.
Sources:
Related: #968
Closes: #891