avoid creating MissingTypeBinding if just checking whether a role shadows an existing type.
(seen during debugging for Bug 362003 - [assist] completion is broken after <B base R> after a base guard)
diff --git a/org.eclipse.jdt.core/compiler/org/eclipse/objectteams/otdt/internal/core/compiler/statemachine/copyinheritance/CopyInheritance.java b/org.eclipse.jdt.core/compiler/org/eclipse/objectteams/otdt/internal/core/compiler/statemachine/copyinheritance/CopyInheritance.java
index ec55e18..c991a57 100644
--- a/org.eclipse.jdt.core/compiler/org/eclipse/objectteams/otdt/internal/core/compiler/statemachine/copyinheritance/CopyInheritance.java
+++ b/org.eclipse.jdt.core/compiler/org/eclipse/objectteams/otdt/internal/core/compiler/statemachine/copyinheritance/CopyInheritance.java
@@ -292,7 +292,7 @@
 			}
 			currentType = currentType.enclosingType();
 		}
-		TypeBinding otherType2 = scope.compilationUnitScope().getType(internalName);
+		TypeBinding otherType2 = (TypeBinding) scope.compilationUnitScope().getTypeOrPackage(internalName, Binding.TYPE, false);
 		if (otherType2 != null && otherType2.isValidBinding())
 			scope.problemReporter().roleShadowsVisibleType(memberDecl, otherType2);
 	}