Skip to content

Commit a80d7f9

Browse files
committed
check __new__ against requested name of builtin annotations
1 parent 2f77b90 commit a80d7f9

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/function/BuiltinMethodDescriptor.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@
4040
*/
4141
package com.oracle.graal.python.builtins.objects.function;
4242

43+
import static com.oracle.graal.python.nodes.SpecialMethodNames.J___NEW__;
44+
4345
import java.util.Objects;
4446
import java.util.concurrent.ConcurrentHashMap;
4547

@@ -137,6 +139,9 @@ private static Builtin findBuiltinAnnotation(String name, NodeFactory<? extends
137139
if (builtin.name().equals(name)) {
138140
return builtin;
139141
}
142+
if (builtin.constructsClass() != PythonBuiltinClassType.nil && J___NEW__.equals(name)) {
143+
return builtin;
144+
}
140145
}
141146
throw new IllegalStateException(String.format(
142147
"Cannot find corresponding builtin annotation on class %s for builtin '%s'",

0 commit comments

Comments
 (0)