ReferenceBinding referenceBinding = (ReferenceBinding) typeBinding;
ReferenceBinding referenceBinding2 = (ReferenceBinding) typeBinding2;
return CharOperation.equals(referenceBinding.compoundName, referenceBinding2.compoundName)
&& (referenceBinding.modifiers & (ExtraCompilerModifiers.AccJustFlag | ClassFileConstants.AccInterface | ClassFileConstants.AccEnum | ClassFileConstants.AccAnnotation))
== (referenceBinding2.modifiers & (ExtraCompilerModifiers.AccJustFlag | ClassFileConstants.AccInterface | ClassFileConstants.AccEnum | ClassFileConstants.AccAnnotation))
&& isEqual(referenceBinding.typeVariables(), referenceBinding2.typeVariables(), visitedTypes)
&& isEqual(referenceBinding.enclosingType(), referenceBinding2.enclosingType(), visitedTypes);
case Binding.RAW_TYPE :
default :
if (!(typeBinding2 instanceof ReferenceBinding)) {