Skip to content
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

Conflict with extended_key_value_attributes #63

Closed
dtolnay opened this issue Mar 13, 2021 · 0 comments · Fixed by #64
Closed

Conflict with extended_key_value_attributes #63

dtolnay opened this issue Mar 13, 2021 · 0 comments · Fixed by #64

Comments

@dtolnay
Copy link
Owner

dtolnay commented Mar 13, 2021

The following macro call compiles successfully on every rustc from 1.31.0 through 1.46.0:

macro_rules! repro {
    ($doc:expr) => {
        paste::item! {
            #[doc = $doc]
            pub struct Struct;
        }
    };
}

macro_rules! call {
    ($name:ident) => {
        repro!(stringify!($name));
    };
}

call!(documentation);

However 1.47.0 started failing with:

error: unexpected token: `stringify`
  --> src/main.rs:3:9
   |
3  | /         paste::item! {
4  | |             #[doc = $doc]
5  | |             pub struct Struct;
6  | |         }
   | |_________^
...
16 |   call!(documentation);
   |   --------------------- in this macro invocation
   |
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

And with a somewhat different message since 1.50.0:

error[E0658]: arbitrary expressions in key-value attributes are unstable
  --> src/main.rs:12:16
   |
12 |         repro!(stringify!($name));
   |                ^^^^^^^^^^^^^^^^^
...
16 | call!(documentation);
   | --------------------- in this macro invocation
   |
   = note: see issue #78835 <https://github.com/rust-lang/rust/issues/78835> for more information
   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
bors bot added a commit to pitkley/dfw that referenced this issue Mar 16, 2021
394: Bump regex from 1.4.4 to 1.4.5 r=pitkley a=dependabot[bot]

Bumps [regex](https://github.com/rust-lang/regex) from 1.4.4 to 1.4.5.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/rust-lang/regex/blob/master/CHANGELOG.md">regex's changelog</a>.</em></p>
<blockquote>
<h1>1.4.5 (2021-03-14)</h1>
<p>This is a small patch release that fixes a regression in the size of a <code>Regex</code>
in the 1.4.4 release. Prior to 1.4.4, a <code>Regex</code> was 552 bytes. In the 1.4.4
release, it was 856 bytes due to internal changes. In this release, a <code>Regex</code>
is now 16 bytes. In general, the size of a <code>Regex</code> was never something that was
on my radar, but this increased size in the 1.4.4 release seems to have crossed
a threshold and resulted in stack overflows in some programs.</p>
<ul>
<li>[BUG <a href="https://github.com/rust-lang/regex/issues/750">#750</a>](<a href="https://github.com/rust-lang/regex/pull/750">rust-lang/regex#750</a>):
Fixes stack overflows seemingly caused by a large <code>Regex</code> size by decreasing
its size.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/rust-lang/regex/commit/ff283badce21dcebd581909d38b81f2c8c9bfb54"><code>ff283ba</code></a> 1.4.5</li>
<li><a href="https://github.com/rust-lang/regex/commit/78c7cefbc9c1b06522a8ccbfb72cd630dec724e3"><code>78c7cef</code></a> impl: substantially reduce regex stack size</li>
<li>See full diff in <a href="https://github.com/rust-lang/regex/compare/1.4.4...1.4.5">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=regex&package-manager=cargo&previous-version=1.4.4&new-version=1.4.5)](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 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)


</details>

395: Bump paste from 1.0.4 to 1.0.5 r=pitkley a=dependabot[bot]

Bumps [paste](https://github.com/dtolnay/paste) from 1.0.4 to 1.0.5.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/dtolnay/paste/releases">paste's releases</a>.</em></p>
<blockquote>
<h2>1.0.5</h2>
<ul>
<li>Work around conflict with extended_key_value_attributes (<a href="https://github.com/dtolnay/paste/issues/63">#63</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/dtolnay/paste/commit/b38636e38862f1df2c7b167073b022fcc8819a05"><code>b38636e</code></a> Release 1.0.5</li>
<li><a href="https://github.com/dtolnay/paste/commit/59fcd8a18b363c7b267087df41ac74a2c03b1f3d"><code>59fcd8a</code></a> Merge pull request <a href="https://github.com/dtolnay/paste/issues/64">#64</a> from dtolnay/kv</li>
<li><a href="https://github.com/dtolnay/paste/commit/e5e87d382e8e104dd1c090f75368ed49c2489bc6"><code>e5e87d3</code></a> Work around conflict with extended_key_value_attributes</li>
<li><a href="https://github.com/dtolnay/paste/commit/f20a2930bc153449a9fae154eab22817f557e7b3"><code>f20a293</code></a> Add regression test for issue 63</li>
<li><a href="https://github.com/dtolnay/paste/commit/c613e7acfe0eb8a3c0c0299101996c65012c401c"><code>c613e7a</code></a> Format with rustfmt 1.4.36-nightly</li>
<li><a href="https://github.com/dtolnay/paste/commit/5c9f92a9ed9e3b694e4cedfbd5d2bdbe732b52fc"><code>5c9f92a</code></a> Move stuff not related to pasting out of method_new</li>
<li><a href="https://github.com/dtolnay/paste/commit/73a54c0c7d493d186fbf3886215db2e5d7bd7cd8"><code>73a54c0</code></a> Make method_new example compilable</li>
<li><a href="https://github.com/dtolnay/paste/commit/23f7facec46ece8e730316782a169a20a6946e85"><code>23f7fac</code></a> Fix catching clippy warnings as CI failures</li>
<li><a href="https://github.com/dtolnay/paste/commit/c55f34310e74a90539024957d006d456d7912979"><code>c55f343</code></a> Resolve explicit_into_iter_loop clippy lint</li>
<li><a href="https://github.com/dtolnay/paste/commit/1b8d824a9abe2275f2ba363c97a2459314ef793e"><code>1b8d824</code></a> Inform clippy of supported compiler version in clippy.toml</li>
<li>Additional commits viewable in <a href="https://github.com/dtolnay/paste/compare/1.0.4...1.0.5">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=paste&package-manager=cargo&previous-version=1.0.4&new-version=1.0.5)](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 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)


</details>

396: Bump libc from 0.2.88 to 0.2.89 r=pitkley a=dependabot[bot]

Bumps [libc](https://github.com/rust-lang/libc) from 0.2.88 to 0.2.89.
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/rust-lang/libc/commit/508f65a2f87968f14a2b815f1e5537f08c504907"><code>508f65a</code></a> Auto merge of <a href="https://github.com/rust-lang/libc/issues/2112">#2112</a> - joshtriplett:eighty-nine, r=JohnTitor</li>
<li><a href="https://github.com/rust-lang/libc/commit/1a359cff89ca2383a1461ae2c571b2e3b5aa3d51"><code>1a359cf</code></a> Bump to 0.2.89</li>
<li><a href="https://github.com/rust-lang/libc/commit/44abe4b82dd19d63e7b2c63578b51b6e76842cd1"><code>44abe4b</code></a> Auto merge of <a href="https://github.com/rust-lang/libc/issues/2111">#2111</a> - voidc:clone3-musl, r=JohnTitor</li>
<li><a href="https://github.com/rust-lang/libc/commit/3e0e58521acef559cda667bad2880a3854a55c1d"><code>3e0e585</code></a> Ignore SYS_clone3 during musl tests</li>
<li><a href="https://github.com/rust-lang/libc/commit/efe0fe9499f5048b7975e806e22ec8079dca7624"><code>efe0fe9</code></a> Add SYS_clone3 for musl targets</li>
<li><a href="https://github.com/rust-lang/libc/commit/a91546f20fe9f558df33e2cd8b6b24554cf91463"><code>a91546f</code></a> Auto merge of <a href="https://github.com/rust-lang/libc/issues/2110">#2110</a> - GuillaumeGomez:cpu-state, r=JohnTitor</li>
<li><a href="https://github.com/rust-lang/libc/commit/fbba2bb34c6e977acccd5b945e5773257c8166f0"><code>fbba2bb</code></a> Add CPU_STATE_* constants</li>
<li><a href="https://github.com/rust-lang/libc/commit/9bd88759e0bfa68e19cd88028f9d7ee422aca615"><code>9bd8875</code></a> Auto merge of <a href="https://github.com/rust-lang/libc/issues/2106">#2106</a> - coolreader18:uinput-structs, r=coolreader18</li>
<li><a href="https://github.com/rust-lang/libc/commit/ed45c2649b848bc2df48ba10d68194d45da03b75"><code>ed45c26</code></a> Move some structs to s_no_extra_traits due to large arrays</li>
<li><a href="https://github.com/rust-lang/libc/commit/3f6b151eed76dada19da7bcbc3d382a5366dd14e"><code>3f6b151</code></a> Skip uinput tests on musl+mips+ppc64+sparc64</li>
<li>Additional commits viewable in <a href="https://github.com/rust-lang/libc/compare/0.2.88...0.2.89">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=libc&package-manager=cargo&previous-version=0.2.88&new-version=0.2.89)](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 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)


</details>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant