src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins.java
changeset 59095 03fbcd06b4c0
parent 58877 aec7bf35d6f5
equal deleted inserted replaced
59094:5d4c3724e4c7 59095:03fbcd06b4c0
  1399 
  1399 
  1400         static boolean checkResolvable(boolean isOptional, Type declaringType, Binding binding) {
  1400         static boolean checkResolvable(boolean isOptional, Type declaringType, Binding binding) {
  1401             if (declaringType instanceof ResolvedJavaSymbol) {
  1401             if (declaringType instanceof ResolvedJavaSymbol) {
  1402                 return checkResolvable(isOptional, ((ResolvedJavaSymbol) declaringType).getResolved(), binding);
  1402                 return checkResolvable(isOptional, ((ResolvedJavaSymbol) declaringType).getResolved(), binding);
  1403             }
  1403             }
  1404             Class<?> declaringClass = InvocationPlugins.resolveType(declaringType, isOptional);
  1404             Class<?> declaringClass = resolveType(declaringType, isOptional);
  1405             if (declaringClass == null) {
  1405             if (declaringClass == null) {
  1406                 return true;
  1406                 return true;
  1407             }
  1407             }
  1408             if (binding.name.equals("<init>")) {
  1408             if (binding.name.equals("<init>")) {
  1409                 if (resolveConstructor(declaringClass, binding) == null && !isOptional) {
  1409                 if (resolveConstructor(declaringClass, binding) == null && !isOptional) {
  1410                     throw new AssertionError(String.format("Constructor not found: %s%s", declaringClass.getName(), binding.argumentsDescriptor));
  1410                     throw new AssertionError(String.format("Constructor not found: %s%s", declaringClass.getName(), binding.argumentsDescriptor));
  1411                 }
  1411                 }
  1412             } else {
  1412             } else {
  1413                 if (resolveMethod(declaringClass, binding) == null && !isOptional) {
  1413                 if (resolveMethod(declaringClass, binding) == null && !isOptional) {
  1414                     throw new AssertionError(String.format("Method not found: %s.%s%s", declaringClass.getName(), binding.name, binding.argumentsDescriptor));
  1414                     throw new NoSuchMethodError(String.format("%s.%s%s", declaringClass.getName(), binding.name, binding.argumentsDescriptor));
  1415                 }
  1415                 }
  1416             }
  1416             }
  1417             return true;
  1417             return true;
  1418         }
  1418         }
  1419 
  1419