private static TypeId<?>[] classArrayToTypeArray(Class<?>[] input) {
    TypeId<?>[] result = new TypeId[input.length];
    for (int i = 0; i < input.length; ++i) {
      result[i] = TypeId.get(input[i]);
    }
    return result;
  }
The super method must include the return type, otherwise its ambiguous for methods with
covariant return types.
android/android_framework/dex-maker/src/main/java/com/android/dx/stock/ProxyBuilder.java