Self initialization doesn't work
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 48/100
Línea de trabajo
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.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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
- Lenguaje dominante
- Rust
- Estrellas
- 310
- Forks
- 18
- Merge medio
- 10 h 18 min
- PR fusionados (30 d)
- 125
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de Cpp2Rust/cpp2rust
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 Medio día Aptitud para principiantes 55/100
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 56/100
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 1-2 días Aptitud para principiantes 35/100
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 56/100
Los mantenedores suelen responder en 1 día
Todos los issues de Cpp2Rust/cpp2rust
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
fritzprix/libr-agent#2612 ·
Los mantenedores suelen responder en 1 día
-
crate: spate-core priority: low
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
NSPG13/agent-bounties#1749 ·
Los mantenedores suelen responder en 1 día
-
area: web bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
kinqsradio/orbyn-engineering#227 ·
Los mantenedores suelen responder en 1 día
-
移动端下载页实时吞吐与筛选栏滚动层级不一致Abiertoenhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día