[Bug]: `CompilerDirectives$ShouldNotReachHere: User locals must have their info field set to a varnames index`
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
- 68/100
Línea de trabajo
Comienza ejecutando el reproductor sum is not None == 1 y luego inspecciona PException.java en raiseUnboundLocalException y el manejo relacionado de variables locales en PBytecodeDSLRootNode. Se considera terminado cuando el fragmento se completa sin el fallo ShouldNotReachHere, conservando al mismo tiempo el comportamiento esperado sin fallos.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Describe the bug
GraalPy crashes when running this fuzzed code:
sum is not None == 1
Operating system
Linux
CPU architecture
x86_64
GraalPy version
GraalPy 3.13.14 (Oracle GraalVM Native 25.3.4.1)
JDK version
No response
Context configuration
No response
Steps to reproduce
Snippet listed above
Expected behavior
No crash
Stack trace
User locals must have their info field set to a varnames index.
com.oracle.truffle.api.CompilerDirectives$ShouldNotReachHere: User locals must have their info field set to a varnames index.
at org.graalvm.truffle/com.oracle.truffle.api.CompilerDirectives.shouldNotReachHere(CompilerDirectives.java:794)
at org.graalvm.truffle/com.oracle.truffle.api.CompilerDirectives.shouldNotReachHere(CompilerDirectives.java:740)
at org.graalvm.py/com.oracle.graal.python.runtime.exception.PException.raiseUnboundLocalException(PException.java:609)
at org.graalvm.py/com.oracle.graal.python.nodes.bytecode_dsl.PBytecodeDSLRootNodeGen$UncachedBytecodeNodeTailCall.getLocalValueInternal(PBytecodeDSLRootNodeGen.java:38374)
at org.graalvm.truffle/com.oracle.truffle.api.bytecode.LocalAccessor.getObject(LocalAccessor.java:116)
at org.graalvm.py/com.oracle.graal.python.nodes.bytecode_dsl.PBytecodeDSLRootNode$LoadAndClearTempLocal.doObject(PBytecodeDSLRootNode.java:4338)
at org.graalvm.py/com.oracle.graal.python.nodes.bytecode_dsl.PBytecodeDSLRootNodeGen$LoadAndClearTempLocal_Node.execute$uncached(PBytecodeDSLRootNodeGen.java)
at org.graalvm.py/com.oracle.graal.python.nodes.bytecode_dsl.PBytecodeDSLRootNodeGen$UncachedBytecodeNodeTailCall.handleLoadAndClearTempLocal_(PBytecodeDSLRootNodeGen.java:37349)
at org.graalvm.py/com.oracle.graal.python.nodes.bytecode_dsl.PBytecodeDSLRootNodeGen$UncachedBytecodeNodeTailCall.__stub_handleLoadAndClearTempLocal_(PBytecodeDSLRootNodeGen.java:0)
at org.graalvm.py/com.oracle.graal.python.nodes.bytecode_dsl.PBytecodeDSLRootNodeGen$UncachedBytecodeNodeTailCall.continueAt(PBytecodeDSLRootNodeGen.java:35093)
at org.graalvm.py/com.oracle.graal.python.nodes.bytecode_dsl.PBytecodeDSLRootNodeGen.continueAt(PBytecodeDSLRootNodeGen.java:3501)
at org.graalvm.py/com.oracle.graal.python.nodes.bytecode_dsl.PBytecodeDSLRootNodeGen.execute(PBytecodeDSLRootNodeGen.java:3493)
at org.graalvm.truffle.runtime/com.oracle.truffle.runtime.OptimizedCallTarget.executeRootNode(OptimizedCallTarget.java:808)
at org.graalvm.truffle.runtime/com.oracle.truffle.runtime.OptimizedCallTarget.profiledPERoot(OptimizedCallTarget.java:722)
at org.graalvm.truffle.runtime/com.oracle.truffle.runtime.OptimizedCallTarget.callBoundary(OptimizedCallTarget.java:641)
at org.graalvm.truffle.runtime.svm/com.oracle.svm.truffle.api.SubstrateOptimizedCallTarget.invokeCallBoundary(SubstrateOptimizedCallTarget.java:124)
at com.oracle.truffle.enterprise.svm/com.oracle.svm.enterprise.truffle.compiler.SubstrateEnterpriseOptimizedCallTarget.invokeCompiledAdapterOrCallBoundary(SubstrateEnterpriseOptimizedCallTarget.java:293)
at com.oracle.truffle.enterprise.svm/com.oracle.svm.enterprise.truffle.compiler.SubstrateEnterpriseOptimizedCallTarget.invokeFromInterpreter(SubstrateEnterpriseOptimizedCallTarget.java:269)
at com.oracle.truffle.enterprise.svm/com.oracle.svm.enterprise.truffle.compiler.SubstrateEnterpriseOptimizedCallTarget.doInvoke(SubstrateEnterpriseOptimizedCallTarget.java:255)
at org.graalvm.truffle.runtime/com.oracle.truffle.runtime.OptimizedCallTarget.callDirect(OptimizedCallTarget.java:573)
at org.graalvm.truffle.runtime/com.oracle.truffle.runtime.OptimizedCallTarget.call(OptimizedCallTarget.java:519)
at org.graalvm.py/com.oracle.graal.python.builtins.modules.GraalPythonModuleBuiltins$RunPathNode.runFile(GraalPythonModuleBuiltins.java:432)
at org.graalvm.py/com.oracle.graal.python.builtins.modules.GraalPythonModuleBuiltins$RunPathNode.runBoundary(GraalPythonModuleBuiltins.java:387)
at org.graalvm.py/com.oracle.graal.python.builtins.modules.GraalPythonModuleBuiltins$RunPathNode.run(GraalPythonModuleBuiltins.java:357)
at org.graalvm.py/com.oracle.graal.python.builtins.modules.GraalPythonModuleBuiltinsFactory$RunPathNodeFactory$RunPathNodeGen.executeAndSpecialize(GraalPythonModuleBuiltinsFactory.java:201)
at org.graalvm.py/com.oracle.graal.python.builtins.modules.GraalPythonModuleBuiltinsFactory$RunPathNodeFactory$RunPathNodeGen.execute(GraalPythonModuleBuiltinsFactory.java:190)
at org.graalvm.py/com.oracle.graal.python.nodes.function.builtins.BuiltinCallNode$BuiltinAnyCallNode.execute(BuiltinCallNode.java:64)
at org.graalvm.py/com.oracle.graal.python.nodes.function.BuiltinFunctionRootNode.execute(BuiltinFunctionRootNode.java:337)
[...snip...]
Additional context
No response
- Lenguaje dominante
- Python
- Estrellas
- 1.7k
- Forks
- 155
- Merge medio
- 7 h 16 min
- PR fusionados (30 d)
- 51
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
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 oracle/graalpython
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
oracle/graalpython#1105 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
oracle/graalpython#1102 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 3/5 1-2 días Aptitud para principiantes 74/100
oracle/graalpython#1133 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
oracle/graalpython#1112 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
oracle/graalpython#1111 ·
Los mantenedores suelen responder en 1 día
Todos los issues de oracle/graalpython
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
BasedHardware/omi#20271 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 92/100
openai/openai-cookbook#3153 ·
Los mantenedores suelen responder en 1 día
-
cvss-severity:high devguard l3montree-cybersecurity/devguard/devguard pkg:golang/github.com/l3montree-dev/devguard risk:low state:open
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
l3montree-dev/devguard#3146 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
-
bug confirmed issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
open-webui/open-webui#31849 · 2 comentarios ·
Los mantenedores suelen responder en 1 día