-
Notifications
You must be signed in to change notification settings - Fork 318
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ir: write declaration of global variable like struct fields #479
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Please use |
TheKK
force-pushed
the
fix_static_array
branch
2 times, most recently
from
February 25, 2020 15:10
93b7a06
to
4ead654
Compare
TheKK
force-pushed
the
fix_static_array
branch
from
February 25, 2020 15:12
4ead654
to
55ff376
Compare
Fixed! |
emilio
approved these changes
Feb 25, 2020
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Really nice! Thanks so much for the fix!
bors bot
added a commit
to crypto-com/thaler
that referenced
this pull request
Mar 23, 2020
1276: Bump cbindgen from 0.13.1 to 0.13.2 r=tomtau a=dependabot-preview[bot] Bumps [cbindgen](https://github.com/eqrion/cbindgen) from 0.13.1 to 0.13.2. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/eqrion/cbindgen/blob/master/CHANGES">cbindgen's changelog</a>.</em></p> <blockquote> <h2>0.13.2</h2> <pre><code> * Constants now have suitable documentation. ([#471](mozilla/cbindgen#471)) * Fixed some C warnings by emitting void when there are no arguments. ([#470](mozilla/cbindgen#470)) * Avoids reading cargo.toml when not needed, which can cause panics in workspace situations. * Only write `default` cases if the switch is not exhaustive. ([#475](mozilla/cbindgen#475)) * Some warnings have been refined. ([#477](mozilla/cbindgen#477)) * Code generation for static arrays has been fixed. ([#479](mozilla/cbindgen#479)) * Opt-in support for constexpr in constants. ([#481](mozilla/cbindgen#481)) * Fix C code generation and some warnings when extremely large constants are used. ([#490](mozilla/cbindgen#490)) * Proper escaping of enum variants and fields. ([#483](mozilla/cbindgen#483)) * Added support for RefCell (as an opaque type) and Cell. ([#489](mozilla/cbindgen#489)) </code></pre> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/eqrion/cbindgen/commit/17d7aad7d07dce8aa665aedbc75c39953afe1600"><code>17d7aad</code></a> Release v0.13.2</li> <li><a href="https://github.com/eqrion/cbindgen/commit/fc577f2a28898b5345ed431fb172c4ede84fa2bf"><code>fc577f2</code></a> support large integer constants (<a href="https://github-redirect.dependabot.com/eqrion/cbindgen/issues/490">#490</a>)</li> <li><a href="https://github.com/eqrion/cbindgen/commit/6218281443ff9bb21c9502369497f7a7c24dd078"><code>6218281</code></a> updated constant_big test case with large negative numbers</li> <li><a href="https://github.com/eqrion/cbindgen/commit/8638652d1d72296888b540f1ae4a194991eba08b"><code>8638652</code></a> ran rustfmt</li> <li><a href="https://github.com/eqrion/cbindgen/commit/7101465403dec23f8752d4b6359e998e89ca3b6b"><code>7101465</code></a> avoid gcc warning by appending ULL suffix to integer literals that are too bi...</li> <li><a href="https://github.com/eqrion/cbindgen/commit/5a4d74b9118928946dd10a49c4891a2610c55437"><code>5a4d74b</code></a> ir: escape export_name while writing source of EnumVariant</li> <li><a href="https://github.com/eqrion/cbindgen/commit/e2b2c81221581f21e40d98045323c5d0b7844e0c"><code>e2b2c81</code></a> ir: escape tagged union's field name</li> <li><a href="https://github.com/eqrion/cbindgen/commit/c3442809b9e0be814918de6281469a955acfe7df"><code>c344280</code></a> tests: Add tests for cell and refcell.</li> <li><a href="https://github.com/eqrion/cbindgen/commit/249b41ce8a57db2c46fdd74b65f045cfc46ed4c0"><code>249b41c</code></a> ir: Add support for RefCell and Cell.</li> <li><a href="https://github.com/eqrion/cbindgen/commit/6654f99251769e9e037824d471f9f39e8d536b90"><code>6654f99</code></a> main: Provide a somewhat-useful error message for --verify changes.</li> <li>Additional commits viewable in <a href="https://github.com/eqrion/cbindgen/compare/v0.13.1...v0.13.2">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=cbindgen&package-manager=cargo&previous-version=0.13.1&new-version=0.13.2)](https://dependabot.com/compatibility-score/?dependency-name=cbindgen&package-manager=cargo&previous-version=0.13.1&new-version=0.13.2) 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 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) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired) </details> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
bors-servo
added a commit
to servo/servo
that referenced
this pull request
Apr 24, 2020
Bump cbindgen from 0.9.1 to 0.14.1 Bumps [cbindgen](https://github.com/eqrion/cbindgen) from 0.9.1 to 0.14.1. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/eqrion/cbindgen/blob/master/CHANGES">cbindgen's changelog</a>.</em></p> <blockquote> <h2>0.14.1</h2> <pre><code> * Handle mangling pointers. ([#508](mozilla/cbindgen#508)) * Unconditionally generate a return statement in partialeq implementations. ([#509](mozilla/cbindgen#509)) </code></pre> <h2>0.14.0</h2> <pre><code> * Minor tweak at how [export.exclude] is handled to allow excluding generic instantiations in C mode. ([#501](mozilla/cbindgen#501)) * Documented cpp_compat option. ([#496](mozilla/cbindgen#496)) * Fixed a panic when parsing associated constants for a built-in type. ([#494](mozilla/cbindgen#494)) </code></pre> <h2>0.13.2</h2> <pre><code> * Constants now have suitable documentation. ([#471](mozilla/cbindgen#471)) * Fixed some C warnings by emitting void when there are no arguments. ([#470](mozilla/cbindgen#470)) * Avoids reading cargo.toml when not needed, which can cause panics in workspace situations. * Only write `default` cases if the switch is not exhaustive. ([#475](mozilla/cbindgen#475)) * Some warnings have been refined. ([#477](mozilla/cbindgen#477)) * Code generation for static arrays has been fixed. ([#479](mozilla/cbindgen#479)) * Opt-in support for constexpr in constants. ([#481](mozilla/cbindgen#481)) * Fix C code generation and some warnings when extremely large constants are used. ([#490](mozilla/cbindgen#490)) * Proper escaping of enum variants and fields. ([#483](mozilla/cbindgen#483)) * Added support for RefCell (as an opaque type) and Cell. ([#489](mozilla/cbindgen#489)) </code></pre> <h2>0.13.1</h2> <pre><code> * Support `#[cfg]` on individual enum variants. ([#469](mozilla/cbindgen#469)) </code></pre> <h2>0.13.0</h2> <pre><code> * Support 'swift_name' attributes on generated functions ([#449](mozilla/cbindgen#449)) * Add [export.pre_body] to config ([#452](mozilla/cbindgen#452)) * Handle new line in doc attribute ([#454](mozilla/cbindgen#454)) * Add support for `Self` in tagged enums, structs and unions ([#455](mozilla/cbindgen#455), [#455](mozilla/cbindgen#455), [#456](mozilla/cbindgen#456)) * Make sentinel variant respect regular config ([#459](mozilla/cbindgen#459)) * Fix layout of tagged enums with size under some configurations ([#463](mozilla/cbindgen#463)) * Add an option to allow configuring the order of function names in generated headers ([#466](mozilla/cbindgen#466)) </code></pre> <h2>0.12.2</h2> <pre><code> * Fixed version detection with lockfile v2. mozilla/cbindgen#446 * Added support for export_name on functions. mozilla/cbindgen#447 </code></pre> <h2>0.12.1</h2> <pre><code> * Added support for #[repr*64)] on enums. mozilla/cbindgen#441 * Added support to generate plain enums instead of enum classes for C++. mozilla/cbindgen#443 * Fixed dependency resolution with lockfile v2. mozilla/cbindgen#438 </code></pre> </tr></table> ... (truncated) </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/eqrion/cbindgen/commit/0761b9bbe48d01ded1bbec45bbeea5544b3b1002"><code>0761b9b</code></a> Release 0.14.1</li> <li><a href="https://github.com/eqrion/cbindgen/commit/33d9ecf11f300bd03f431e9f3417c063e681380c"><code>33d9ecf</code></a> Handle mangling pointers.</li> <li><a href="https://github.com/eqrion/cbindgen/commit/0fed9eebc47abcd31e0e69357cd39262c8a5a6cc"><code>0fed9ee</code></a> enum: Unconditionally generate a return statement in partialeq implementations.</li> <li><a href="https://github.com/eqrion/cbindgen/commit/a519f1bda444a0c6c01464296a052d9a05e1d9c4"><code>a519f1b</code></a> Actually use the temp dir for temporary compiled objects.</li> <li><a href="https://github.com/eqrion/cbindgen/commit/4a38a48937264d6ec162b2fd47ffd0e7a091ca72"><code>4a38a48</code></a> Release 0.14.0</li> <li><a href="https://github.com/eqrion/cbindgen/commit/39bae60ad7ac4711d8fccc0d098ecef98b37d559"><code>39bae60</code></a> Generate test object files in a temporary directory instead of in-tree</li> <li><a href="https://github.com/eqrion/cbindgen/commit/ec1631f3e47686e6e0c1b7641bb08b0e39c59250"><code>ec1631f</code></a> Allow excluding monomorph structs in C mode.</li> <li><a href="https://github.com/eqrion/cbindgen/commit/6fd245096dcd5c50c1065b4bd6ce62a09df0b39b"><code>6fd2450</code></a> Add missing cpp_compat documentation.</li> <li><a href="https://github.com/eqrion/cbindgen/commit/c265a7562a5ee815057efcc8b1aca31cd3d5318d"><code>c265a75</code></a> parser: Don't panic when finding associated constants to a primitive.</li> <li><a href="https://github.com/eqrion/cbindgen/commit/17d7aad7d07dce8aa665aedbc75c39953afe1600"><code>17d7aad</code></a> Release v0.13.2</li> <li>Additional commits viewable in <a href="https://github.com/eqrion/cbindgen/compare/v0.9.1...v0.14.1">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=cbindgen&package-manager=cargo&previous-version=0.9.1&new-version=0.14.1)](https://dependabot.com/compatibility-score/?dependency-name=cbindgen&package-manager=cargo&previous-version=0.9.1&new-version=0.14.1) 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 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) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired) </details>
bors-servo
added a commit
to servo/servo
that referenced
this pull request
Apr 24, 2020
Bump cbindgen from 0.9.1 to 0.14.1 Bumps [cbindgen](https://github.com/eqrion/cbindgen) from 0.9.1 to 0.14.1. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/eqrion/cbindgen/blob/master/CHANGES">cbindgen's changelog</a>.</em></p> <blockquote> <h2>0.14.1</h2> <pre><code> * Handle mangling pointers. ([#508](mozilla/cbindgen#508)) * Unconditionally generate a return statement in partialeq implementations. ([#509](mozilla/cbindgen#509)) </code></pre> <h2>0.14.0</h2> <pre><code> * Minor tweak at how [export.exclude] is handled to allow excluding generic instantiations in C mode. ([#501](mozilla/cbindgen#501)) * Documented cpp_compat option. ([#496](mozilla/cbindgen#496)) * Fixed a panic when parsing associated constants for a built-in type. ([#494](mozilla/cbindgen#494)) </code></pre> <h2>0.13.2</h2> <pre><code> * Constants now have suitable documentation. ([#471](mozilla/cbindgen#471)) * Fixed some C warnings by emitting void when there are no arguments. ([#470](mozilla/cbindgen#470)) * Avoids reading cargo.toml when not needed, which can cause panics in workspace situations. * Only write `default` cases if the switch is not exhaustive. ([#475](mozilla/cbindgen#475)) * Some warnings have been refined. ([#477](mozilla/cbindgen#477)) * Code generation for static arrays has been fixed. ([#479](mozilla/cbindgen#479)) * Opt-in support for constexpr in constants. ([#481](mozilla/cbindgen#481)) * Fix C code generation and some warnings when extremely large constants are used. ([#490](mozilla/cbindgen#490)) * Proper escaping of enum variants and fields. ([#483](mozilla/cbindgen#483)) * Added support for RefCell (as an opaque type) and Cell. ([#489](mozilla/cbindgen#489)) </code></pre> <h2>0.13.1</h2> <pre><code> * Support `#[cfg]` on individual enum variants. ([#469](mozilla/cbindgen#469)) </code></pre> <h2>0.13.0</h2> <pre><code> * Support 'swift_name' attributes on generated functions ([#449](mozilla/cbindgen#449)) * Add [export.pre_body] to config ([#452](mozilla/cbindgen#452)) * Handle new line in doc attribute ([#454](mozilla/cbindgen#454)) * Add support for `Self` in tagged enums, structs and unions ([#455](mozilla/cbindgen#455), [#455](mozilla/cbindgen#455), [#456](mozilla/cbindgen#456)) * Make sentinel variant respect regular config ([#459](mozilla/cbindgen#459)) * Fix layout of tagged enums with size under some configurations ([#463](mozilla/cbindgen#463)) * Add an option to allow configuring the order of function names in generated headers ([#466](mozilla/cbindgen#466)) </code></pre> <h2>0.12.2</h2> <pre><code> * Fixed version detection with lockfile v2. mozilla/cbindgen#446 * Added support for export_name on functions. mozilla/cbindgen#447 </code></pre> <h2>0.12.1</h2> <pre><code> * Added support for #[repr*64)] on enums. mozilla/cbindgen#441 * Added support to generate plain enums instead of enum classes for C++. mozilla/cbindgen#443 * Fixed dependency resolution with lockfile v2. mozilla/cbindgen#438 </code></pre> </tr></table> ... (truncated) </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/eqrion/cbindgen/commit/0761b9bbe48d01ded1bbec45bbeea5544b3b1002"><code>0761b9b</code></a> Release 0.14.1</li> <li><a href="https://github.com/eqrion/cbindgen/commit/33d9ecf11f300bd03f431e9f3417c063e681380c"><code>33d9ecf</code></a> Handle mangling pointers.</li> <li><a href="https://github.com/eqrion/cbindgen/commit/0fed9eebc47abcd31e0e69357cd39262c8a5a6cc"><code>0fed9ee</code></a> enum: Unconditionally generate a return statement in partialeq implementations.</li> <li><a href="https://github.com/eqrion/cbindgen/commit/a519f1bda444a0c6c01464296a052d9a05e1d9c4"><code>a519f1b</code></a> Actually use the temp dir for temporary compiled objects.</li> <li><a href="https://github.com/eqrion/cbindgen/commit/4a38a48937264d6ec162b2fd47ffd0e7a091ca72"><code>4a38a48</code></a> Release 0.14.0</li> <li><a href="https://github.com/eqrion/cbindgen/commit/39bae60ad7ac4711d8fccc0d098ecef98b37d559"><code>39bae60</code></a> Generate test object files in a temporary directory instead of in-tree</li> <li><a href="https://github.com/eqrion/cbindgen/commit/ec1631f3e47686e6e0c1b7641bb08b0e39c59250"><code>ec1631f</code></a> Allow excluding monomorph structs in C mode.</li> <li><a href="https://github.com/eqrion/cbindgen/commit/6fd245096dcd5c50c1065b4bd6ce62a09df0b39b"><code>6fd2450</code></a> Add missing cpp_compat documentation.</li> <li><a href="https://github.com/eqrion/cbindgen/commit/c265a7562a5ee815057efcc8b1aca31cd3d5318d"><code>c265a75</code></a> parser: Don't panic when finding associated constants to a primitive.</li> <li><a href="https://github.com/eqrion/cbindgen/commit/17d7aad7d07dce8aa665aedbc75c39953afe1600"><code>17d7aad</code></a> Release v0.13.2</li> <li>Additional commits viewable in <a href="https://github.com/eqrion/cbindgen/compare/v0.9.1...v0.14.1">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=cbindgen&package-manager=cargo&previous-version=0.9.1&new-version=0.14.1)](https://dependabot.com/compatibility-score/?dependency-name=cbindgen&package-manager=cargo&previous-version=0.9.1&new-version=0.14.1) 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 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) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired) </details>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
fix #476
Just wondering, should I use
Source::write of (String, Type)
orcdecl::write_field
directly?