diff --git a/translator/src/main/java/com/google/devtools/j2objc/util/NameTable.java b/translator/src/main/java/com/google/devtools/j2objc/util/NameTable.java index 21815c0361..7539802964 100644 --- a/translator/src/main/java/com/google/devtools/j2objc/util/NameTable.java +++ b/translator/src/main/java/com/google/devtools/j2objc/util/NameTable.java @@ -720,6 +720,7 @@ && isTranslatableTypeVariable((TypeVariable) type, genericUsageTypeElement)) { && enableGenerics && !((DeclaredType) type).getTypeArguments().isEmpty() && !TypeUtil.isInterface(type) + && !typeUtil.isProtoClass(type) && !typeUtil.isClassType(TypeUtil.asTypeElement(type))) { final String finalQualifiers = qualifiers; // Avoid creating generics that merely state . Obj-C generics only support 'id'