ITypeBinding declBinding= ((ITypeBinding)binding).getDeclaringClass(); if (declBinding == null) declBinding= (ITypeBinding)binding;   if (binding != fImport && declBinding.getName().equals(fImport.getName())) {
ITypeBinding typeBinding= (ITypeBinding)binding; if (isConflictingType(typeBinding.getTypeDeclaration(), qualifier, name)) {
			public int findInContext(String qualifier, final String name, int kind) {								ScopeAnalyzer analyzer= new ScopeAnalyzer(fCompilationUnit);				IBinding[] declarationsInScope= analyzer.getDeclarationsInScope(fAccessor.getStartPosition(), ScopeAnalyzer.TYPES);				for (int i= 0; i < declarationsInScope.length; i++) {					if (declarationsInScope[i] == fImport) { // TODO: ma: Bug should use qualifier and name, fImport is unnecessary						return RES_NAME_FOUND;					}				}								List imports= new ArrayList();				List staticImports= new ArrayList(); // TODO: ma: can set to null if not interested in staticImports				ImportReferencesCollector.collect(fCompilationUnit, fCompilationUnit.getJavaElement().getJavaProject(), null, imports, staticImports);				for (Iterator iter= imports.iterator(); iter.hasNext();) {					Name element= (Name)iter.next();					IBinding binding= element.resolveBinding();					if (binding instanceof ITypeBinding) {						ITypeBinding declBinding= ((ITypeBinding)binding).getDeclaringClass();						if (declBinding == null)							declBinding= (ITypeBinding)binding;												// TODO: ma: be careful with declBinding.getName(): will contain <> for parameterized types						if (binding != fImport && declBinding.getName().equals(fImport.getName())) {							return RES_NAME_CONFLICT;						}					}				}								return RES_NAME_UNKNOWN;			}