Java: a static call through a wildcard import resolves to a same-named class in an unimported package
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 52/100
Línea de trabajo
Reproduce with the three Java files in the report and CODEGRAPH_KERNEL=0, then trace the qualified-name resolution path for Util.log and compare it with the new Util() path that already applies package/import visibility. The relevant behavior is static-call candidate selection: own package, explicit imports, then on-demand imports. Done means the wildcard case resolves to com.x.b.Util, the explicit-import case still works, and a regression test covers new Util().run().
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
A static call through a Java on-demand (wildcard) import resolves to a same-named class in a package the file doesn't import, while new of the same name in the same file goes to the right one.
// src/com/x/a/Util.java package com.x.a; public class Util { public static void log(String s) {} public void run() {} }
// src/com/x/b/Util.java package com.x.b; public class Util { public static void log(String s) {} public void run() {} }
// src/com/x/m/Main.java
package com.x.m;
import com.x.b.*;
public class Main {
void go() { Util.log("x"); new Util().run(); }
}
call in go |
edge on main |
expected |
|---|---|---|
Util.log("x") |
log in com/x/a/Util.java (qualified-name) ✗ |
com/x/b/Util.java |
new Util() |
Util in com/x/b/Util.java ✓ |
same |
new Util().run() |
none | run in com/x/b |
With an explicit import com.x.b.Util; the static call resolves correctly.
Reproduced on main at 77ee3484 with CODEGRAPH_KERNEL=0. Linux/WSL2, Node 22.23.2.
Expected. The Class.member (qualified-name) path should apply the same visibility the new path already uses: the file's own package, explicit imports, then on-demand imports. A class in a package the file neither is in nor imports is not a candidate.
- Lenguaje dominante
- C
- Estrellas
- 73.2k
- Forks
- 4.7k
- Merge medio
- 3 h 15 min
- PR fusionados (30 d)
- 576
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 colbymchenry/codegraph
-
mcp: a projectPath naming a file inside a project returns isError ("Path is not a directory")Posiblemente ocupada @maxmilian la tomó hace 1 día. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
colbymchenry/codegraph#2982 ·
Los mantenedores suelen responder en 1 día
-
mcp: a non-object tools/call arguments crashes the handler and is reported as an internal error to retryPosiblemente ocupada @kjgggggg la tomó hace 1 día. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
colbymchenry/codegraph#2981 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
colbymchenry/codegraph#2974 ·
Los mantenedores suelen responder en 1 día
-
search: FTS special characters are deleted, not separated, so leaf(entry) matches nothingPosiblemente ocupada @kjgggggg la tomó hace 1 día. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
colbymchenry/codegraph#2971 ·
Los mantenedores suelen responder en 1 día
-
[Security Vulnerabiliy] Vulnerable bundled `node.exe` detected (Node2Shell - CVE-2026-111497)Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
colbymchenry/codegraph#2959 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de colbymchenry/codegraph
Issues similares
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 70/100
ly05010419/MacNativeGames#1340 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 1 día
-
area:stdlib bug found-by:cold-read kind:bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
InauguralSystems/EigenScript#2197 ·
Los mantenedores suelen responder en 1 día
-
Hide the cursorAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 63/100
seedds/nxnative#675 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
Los mantenedores suelen responder en 2 días