Rust-GPU / Rust-GPU/rust-gpu

spirv attribute errors in proc macros don't show errors properly due to span being the macro invocation

オープン
#355 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

bug
主要言語
Rust
スター
3.4k
フォーク
126
PR マージ指標
30日以内にマージされた PR はありません

説明

If you codegen spirv entry points and you typo an attribute, you get this error not showing you which one you typo'ed, since the span is from the macro invocation.

  error: unknown argument to spirv attribute
    --> node-graph/graster-nodes/src/adjustments.rs:44:1
     |
  44 | #[node_macro::node(category("Raster: Adjustment"), shader_node(PerPixelAdjust))]
     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
     = note: this error originates in the attribute macro `node_macro::node` (in Nightly builds, run with -Z macro-backtrace for more info)

System Info

  • Rust-GPU master

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

node-graph/graster-nodes/src/adjustments.rs:44 の spirv 属性の誤記を再現し、node_macro::node 属性マクロのエラー報告を調査してください。属性の span がどのように選択されるかを追跡し、その後、未知の引数によってマクロ呼び出しだけでなく問題の属性が特定されることを確認してください。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
rust
領域
compilers
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
活発
明瞭さ
おおむね明確
初心者へのやさしさ
58/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。