Self initialization doesn't work
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
調査の方向性
Start by tracing how the transpiler handles a variable initialized with its own address, using the C and generated Rust snippets in the issue as the reproducer. Identify the translation entry point and relevant tests, then check whether the generated Rust compiles; done means this self-initialization case builds successfully.
索引モデルが issue の本文から書いたものです。
説明
struct list_head {
struct list_head *next;
};
void f() {
struct list_head list = { &list };
}
compiles to:
#[derive(Default)]
pub struct list_head {
pub next: Value<Ptr<list_head>>,
}
pub fn f_0() {
let list: Value<list_head> = Rc::new(RefCell::new(list_head {
next: Rc::new(RefCell::new((list.as_pointer()))),
}));
}
which fails to build with:
error[E0425]: cannot find value `list` in this scope
--> src/main.rs:35:37
|
35 | next: Rc::new(RefCell::new((list.as_pointer()))),
| ^^^^ not found in this scope
- 主要言語
- Rust
- スター
- 310
- フォーク
- 18
- 平均マージ
- 10時間 18分
- マージ済み PR(30日)
- 125
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
Cpp2Rust/cpp2rust のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 79/100
メンテナーはふだん 1 日以内に返信
-
難易度 3/5 半日 初心者へのやさしさ 55/100
メンテナーはふだん 1 日以内に返信
-
難易度 3/5 1〜2日 初心者へのやさしさ 56/100
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 1〜2日 初心者へのやさしさ 35/100
メンテナーはふだん 1 日以内に返信
-
難易度 3/5 1〜2日 初心者へのやさしさ 56/100
メンテナーはふだん 1 日以内に返信
Cpp2Rust/cpp2rust の issue をすべて見る
似ている issue
-
🐞 bug 🧩 bevy_gantz_egui
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
nannou-org/gantz#500 ·
メンテナーはふだん 1 日以内に返信
-
enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
metasequoiaime/msime#10989 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
fritzprix/libr-agent#2612 ·
メンテナーはふだん 1 日以内に返信
-
crate: spate-core priority: low
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
NSPG13/agent-bounties#1749 ·
メンテナーはふだん 1 日以内に返信