Remove useless casts from cvs.core.

And enable the compiler preference to mark them.

Change-Id: I091e72b08d56caf719ae663dfa5302b1ae57ec75
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
diff --git a/bundles/org.eclipse.team.cvs.core/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.team.cvs.core/.settings/org.eclipse.jdt.core.prefs
index 8922d92..3e8224c 100644
--- a/bundles/org.eclipse.team.cvs.core/.settings/org.eclipse.jdt.core.prefs
+++ b/bundles/org.eclipse.team.cvs.core/.settings/org.eclipse.jdt.core.prefs
@@ -7,6 +7,15 @@
 org.eclipse.jdt.core.circularClasspath=error
 org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
 org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
+org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
+org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
+org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
+org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
+org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
+org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
+org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
+org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
+org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
 org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
 org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
@@ -16,20 +25,28 @@
 org.eclipse.jdt.core.compiler.debug.localVariable=generate
 org.eclipse.jdt.core.compiler.debug.sourceFile=generate
 org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
+org.eclipse.jdt.core.compiler.problem.APILeak=warning
 org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
 org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
 org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
 org.eclipse.jdt.core.compiler.problem.deprecation=warning
 org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
 org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
 org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
 org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
+org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
 org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
 org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
 org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
 org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error
 org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
 org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=error
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
 org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=error
 org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=error
 org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
@@ -38,35 +55,72 @@
 org.eclipse.jdt.core.compiler.problem.missingDefaultCase=warning
 org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
 org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disable
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
 org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
 org.eclipse.jdt.core.compiler.problem.missingSerialVersion=error
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
 org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error
 org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=error
 org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
+org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
+org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
+org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
+org.eclipse.jdt.core.compiler.problem.nullReference=warning
+org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
+org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
 org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=error
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
 org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
+org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
 org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
+org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
+org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
 org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
 org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
 org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
 org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.terminalDeprecation=warning
 org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
 org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
 org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
 org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentType=warning
+org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentTypeStrict=disabled
+org.eclipse.jdt.core.compiler.problem.unlikelyEqualsArgumentType=info
 org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
 org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unstableAutoModuleName=warning
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
 org.eclipse.jdt.core.compiler.problem.unusedImport=error
 org.eclipse.jdt.core.compiler.problem.unusedLabel=error
 org.eclipse.jdt.core.compiler.problem.unusedLocal=error
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
 org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
 org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
+org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
 org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
+org.eclipse.jdt.core.compiler.release=disabled
 org.eclipse.jdt.core.compiler.source=1.8
 org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled
 org.eclipse.jdt.core.compiler.taskPriorities=NORMAL,HIGH,NORMAL
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMergeSubscriber.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMergeSubscriber.java
index f12d289..e39b8ac 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMergeSubscriber.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMergeSubscriber.java
@@ -195,7 +195,7 @@
 
 	@Override
 	public IResource[] roots() {
-		return (IResource[]) roots.toArray(new IResource[roots.size()]);
+		return roots.toArray(new IResource[roots.size()]);
 	}
 
 	@Override
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSRepositoryLocationMatcher.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSRepositoryLocationMatcher.java
index d93b040..d46978b 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSRepositoryLocationMatcher.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSRepositoryLocationMatcher.java
@@ -59,7 +59,7 @@
 		for (Iterator i = infoMap.keySet().iterator(); i.hasNext();) {
 			IProject project = (IProject) i.next();
 			if (confirmedProjectsList.contains(project)) {
-				LoadInfo loadInfo = (LoadInfo) infoMap.get(project);
+				LoadInfo loadInfo = infoMap.get(project);
 				projectSetRepositoryLocations.add(loadInfo.repositoryLocation);
 			}
 		}
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/AbstractStructureVisitor.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/AbstractStructureVisitor.java
index 715916b..6de8222 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/AbstractStructureVisitor.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/AbstractStructureVisitor.java
@@ -277,7 +277,7 @@
 			this.monitor.beginTask(null, resourceHint);
 			session.setSendFileTitleKey(getSendFileMessage());
 			for (int i = 0; i < resourceList.size(); i++) {
-				((ICVSResource)resourceList.get(i)).accept(this);
+				resourceList.get(i).accept(this);
 			}
 		} finally {
 			monitor.done();
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Update.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Update.java
index 973bd4c..a03b060 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Update.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/Update.java
@@ -116,7 +116,7 @@
 				newOptions.add(Command.PRUNE_EMPTY_DIRECTORIES);
 			}
 		}
-		localOptions = (LocalOption[]) newOptions.toArray(new LocalOption[newOptions.size()]);
+		localOptions = newOptions.toArray(new LocalOption[newOptions.size()]);
 		return super.filterLocalOptions(session, globalOptions, localOptions);
 	}
 	
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/filehistory/CVSFileHistory.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/filehistory/CVSFileHistory.java
index b6c537c..4b96051 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/filehistory/CVSFileHistory.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/filehistory/CVSFileHistory.java
@@ -267,7 +267,7 @@
 				directDescendents.add(revisions[i]);
 			}
 		}
-		return (IFileRevision[]) directDescendents.toArray(new IFileRevision[directDescendents.size()]);
+		return directDescendents.toArray(new IFileRevision[directDescendents.size()]);
 	}
 
 	private IFileRevision[] convertToFileRevision(IFileState[] localRevisions, IProgressMonitor monitor) {
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/filesystem/CVSFileTree.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/filesystem/CVSFileTree.java
index 27cc765..8668054 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/filesystem/CVSFileTree.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/filesystem/CVSFileTree.java
@@ -50,7 +50,7 @@
 		for (int i = 0; i < remoteResources.length; i++) {
 			IFileInfo fileInfo;
 			try {
-				fileInfo = getFileInfo((ICVSResource) remoteResources[i], new NullProgressMonitor());
+				fileInfo = getFileInfo(remoteResources[i], new NullProgressMonitor());
 				fileStore[i] = new CVSFileStore(baseURI.append(fileInfo.getName()), fileInfo);
 			} catch (TeamException e) {}
 		}
@@ -90,7 +90,7 @@
 		for (int i = 0; i < remoteResources.length; i++) {
 			IFileInfo fileInfo;
 			try {
-				fileInfo = getFileInfo((ICVSResource) remoteResources[i], new NullProgressMonitor());
+				fileInfo = getFileInfo(remoteResources[i], new NullProgressMonitor());
 				fileInfos[i] = fileInfo;
 			} catch (TeamException e) {}
 		}
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseFile.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseFile.java
index 61402ee..4c094f9 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseFile.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseFile.java
@@ -340,7 +340,7 @@
 					notificationCharacters.add(Character.valueOf(NotifyInfo.COMMIT));
 				internalFormat = new char[notificationCharacters.size()];
 				for (int i = 0; i < internalFormat.length; i++) {
-					internalFormat[i] = ((Character)notificationCharacters.get(i)).charValue();
+					internalFormat[i] = notificationCharacters.get(i).charValue();
 				}
 			}
 			
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseFolder.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseFolder.java
index 648eb7f..5ccf537 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseFolder.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseFolder.java
@@ -80,7 +80,7 @@
                 }
 			}		
 		}	
-		return (ICVSResource[]) result.toArray(new ICVSResource[result.size()]);
+		return result.toArray(new ICVSResource[result.size()]);
 	}
 
 	@Override
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseSynchronizer.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseSynchronizer.java
index 925f57f..11fdf0b 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseSynchronizer.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/EclipseSynchronizer.java
@@ -421,7 +421,7 @@
 				// broadcast changes to unmanaged children - they are the only candidates for being ignored
 				List<IResource> possibleIgnores = new ArrayList<>();
 				accumulateNonManagedChildren(folder, possibleIgnores);
-				ResourceStateChangeListeners.getListener().resourceSyncInfoChanged((IResource[])possibleIgnores.toArray(new IResource[possibleIgnores.size()]));
+				ResourceStateChangeListeners.getListener().resourceSyncInfoChanged(possibleIgnores.toArray(new IResource[possibleIgnores.size()]));
 			} finally {
 				endOperation();
 			}
@@ -681,7 +681,7 @@
     				}
     				if (!changed.isEmpty()) {
     					ResourceStateChangeListeners.getListener().resourceSyncInfoChanged(
-    						(IResource[]) changed.toArray(new IResource[changed.size()]));
+    						changed.toArray(new IResource[changed.size()]));
     				}
     			} finally {
     				if (rule != null) endBatching(rule, null);
@@ -708,7 +708,7 @@
 		}
 		if (!changed.isEmpty()) {
 			ResourceStateChangeListeners.getListener().externalSyncInfoChange(
-					(IResource[]) changed.toArray(new IResource[changed.size()]));
+					changed.toArray(new IResource[changed.size()]));
 		}
 	}
 	
@@ -1030,7 +1030,7 @@
 						// do not overwrite the sync info for linked resources
 						if (infos.size() > 0 || !isLinkedResource(folder))
 							SyncFileWriter.writeAllResourceSync(folder,
-								(byte[][]) infos.toArray(new byte[infos.size()][]));
+								infos.toArray(new byte[infos.size()][]));
 					} catch(CVSException e) {
 						try {
 							sessionPropertyCache.purgeCache(folder, false /* depth 1 */);
@@ -1058,7 +1058,7 @@
 			allChanges.addAll(Arrays.asList(changedResources));
 			allChanges.addAll(Arrays.asList(changedFolders));
 			allChanges.addAll(dirtyParents);	
-			IResource[] resources = (IResource[]) allChanges.toArray(
+			IResource[] resources = allChanges.toArray(
 				new IResource[allChanges.size()]);
 			broadcastResourceStateChanges(resources);
 			if ( ! errors.isEmpty()) {
@@ -1067,7 +1067,7 @@
 											CVSMessages.EclipseSynchronizer_ErrorCommitting, 
 											null);
 				for (int i = 0; i < errors.size(); i++) {
-					status.merge((IStatus)errors.get(i));
+					status.merge(errors.get(i));
 				}
 				return status;
 			}
@@ -1457,7 +1457,7 @@
 				}
 			}
 		}
-		return (IContainer[]) folders.toArray(new IContainer[folders.size()]);
+		return folders.toArray(new IContainer[folders.size()]);
 	}
 	
 	/**
@@ -1825,7 +1825,7 @@
 			IResource resource = resources[i];
 			set.add(resource.getProject());
 		}
-		IProject[] projects = (IProject[]) set.toArray(new IProject[set.size()]);
+		IProject[] projects = set.toArray(new IProject[set.size()]);
 		if (projects.length == 1) {
 			return projects[0];
 		}
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/FileContentCachingService.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/FileContentCachingService.java
index 3a7a142..dace200 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/FileContentCachingService.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/FileContentCachingService.java
@@ -135,6 +135,6 @@
 				// The child does not exists so exclude it
 			}
 		}
-		return (String[]) existing.toArray(new String[existing.size()]);
+		return existing.toArray(new String[existing.size()]);
 	}
 }
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/FileModificationManager.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/FileModificationManager.java
index 57cefe6..d35f56e 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/FileModificationManager.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/FileModificationManager.java
@@ -95,7 +95,7 @@
 			});
 			if (!modifiedResources.isEmpty()) {
 				ResourceStateChangeListeners.getListener().resourceModified(
-					(IResource[])modifiedResources.toArray(new IResource[modifiedResources.size()]));
+					modifiedResources.toArray(new IResource[modifiedResources.size()]));
 				modifiedResources.clear();
 			}
 		} catch (CoreException e) {
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteFolder.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteFolder.java
index 2eb13c5..567c908 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteFolder.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteFolder.java
@@ -164,7 +164,7 @@
 				IStatus status = Command.UPDATE.execute(
 					session,
 					new GlobalOption[] { Command.DO_NOT_CHANGE },
-					(LocalOption[]) localOptions.toArray(new LocalOption[localOptions.size()]),
+					localOptions.toArray(new LocalOption[localOptions.size()]),
 					new ICVSResource[] { child }, new UpdateListener(listener),
 					Policy.subMonitorFor(progress, 70));
 				if (status.getCode() == CVSStatus.SERVER_ERROR) {
@@ -246,7 +246,7 @@
 						
 			}		
 		}
-		return (ICVSResource[]) result.toArray(new ICVSResource[result.size()]);
+		return result.toArray(new ICVSResource[result.size()]);
 	}
 	
 	@Override
@@ -501,7 +501,7 @@
 	
 	@Override
 	public ICVSRemoteResource forTag(CVSTag tagName) {
-		return (ICVSRemoteFolder)forTag(null, tagName);
+		return forTag(null, tagName);
 	}
 
 	@Override
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteFolderMemberFetcher.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteFolderMemberFetcher.java
index 1c0ee06..d6d297f 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteFolderMemberFetcher.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteFolderMemberFetcher.java
@@ -105,7 +105,7 @@
 			return Command.UPDATE.execute(
 				session,
 				new GlobalOption[] { Command.DO_NOT_CHANGE },
-				(LocalOption[])localOptions.toArray(new LocalOption[localOptions.size()]),
+				localOptions.toArray(new LocalOption[localOptions.size()]),
 				new ICVSResource[] { parentFolder },
 				new UpdateListener(this),
 			Policy.subMonitorFor(progress, 90));
@@ -159,11 +159,11 @@
 		// Report any internal exceptions that occurred fetching the members
 		if ( ! exceptions.isEmpty()) {
 			if (exceptions.size() == 1) {
-				throw (CVSException)exceptions.get(0);
+				throw exceptions.get(0);
 			} else {
 				MultiStatus multi = new MultiStatus(CVSProviderPlugin.ID, 0, errorTitle, null);
 				for (int i = 0; i < exceptions.size(); i++) {
-					multi.merge(((CVSException)exceptions.get(i)).getStatus());
+					multi.merge(exceptions.get(i).getStatus());
 				}
 				throw new CVSException(multi);
 			}
@@ -285,7 +285,7 @@
 	 * @return
 	 */
 	protected ICVSFile[] getFiles() {
-		return (ICVSFile[]) files.toArray(new ICVSFile[files.size()]);
+		return files.toArray(new ICVSFile[files.size()]);
 	}
 	
 	/**
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteFolderSandbox.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteFolderSandbox.java
index 38d3a27..0171bc5 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteFolderSandbox.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteFolderSandbox.java
@@ -115,6 +115,6 @@
 				results.add(children[i]);
 			}
 		}
-		setChildren((ICVSRemoteResource[]) results.toArray(new ICVSRemoteResource[results.size()]));		
+		setChildren(results.toArray(new ICVSRemoteResource[results.size()]));		
 	}
 }
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteModule.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteModule.java
index 470a79b..0877316 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteModule.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/RemoteModule.java
@@ -111,7 +111,7 @@
 				CVSProviderPlugin.log(IStatus.WARNING, NLS.bind(CVSMessages.RemoteModule_invalidDefinition, new String[] { moduleDefinitionStrings[i], repository.getLocation(true) }), null); 
 				continue;
 			}
-			LocalOption[] localOptions = (LocalOption[]) localOptionsList.toArray(new LocalOption[localOptionsList.size()]);
+			LocalOption[] localOptions = localOptionsList.toArray(new LocalOption[localOptionsList.size()]);
 			
 			if (Checkout.ALIAS.isElementOf(localOptions)) {
 				
@@ -233,7 +233,7 @@
 					}
 				}
 				if (expandable) {
-					module.setReferencedModules((ICVSRemoteResource[]) referencedFolders.toArray(new ICVSRemoteResource[referencedFolders.size()]));
+					module.setReferencedModules(referencedFolders.toArray(new ICVSRemoteResource[referencedFolders.size()]));
 				} else {
 					module.setExpandable(false);
 				}
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/SessionPropertySyncInfoCache.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/SessionPropertySyncInfoCache.java
index f764751..0c09baf 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/SessionPropertySyncInfoCache.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/SessionPropertySyncInfoCache.java
@@ -163,7 +163,7 @@
 					flushed.addAll(Arrays.asList(flushedChildren));
 				}
 			}
-			return (IResource[]) flushed.toArray(new IResource[flushed.size()]);
+			return flushed.toArray(new IResource[flushed.size()]);
 		} catch (CoreException e) {
 			throw CVSException.wrapException(e);
 		}
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/SynchronizerSyncInfoCache.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/SynchronizerSyncInfoCache.java
index f8cd3e8..46747a6 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/SynchronizerSyncInfoCache.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/SynchronizerSyncInfoCache.java
@@ -313,7 +313,7 @@
 			
 			if (cachedResources.size() != 0){
 				IResource[] resources = folder.members(true);
-				IResource[] cachedResourcesArray = (IResource[]) cachedResources.toArray(new IResource[cachedResources.size()]);
+				IResource[] cachedResourcesArray = cachedResources.toArray(new IResource[cachedResources.size()]);
 				IResource[]finalResources = new IResource[resources.length + cachedResourcesArray.length];
 				System.arraycopy(resources, 0, finalResources, 0, resources.length);
 				System.arraycopy(cachedResourcesArray, 0, finalResources, resources.length, cachedResourcesArray.length);
@@ -397,7 +397,7 @@
 		synchronized (pendingCacheWrites) {
 			if (pendingCacheWrites.isEmpty())
 				return null;
-			return (IResource[]) pendingCacheWrites.keySet().toArray(new IResource[pendingCacheWrites.size()]);
+			return pendingCacheWrites.keySet().toArray(new IResource[pendingCacheWrites.size()]);
 		}
 	}
 }
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/UpdateContentCachingService.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/UpdateContentCachingService.java
index 1ea7f03..18280a3 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/UpdateContentCachingService.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/resources/UpdateContentCachingService.java
@@ -266,7 +266,7 @@
 			options.add(Update.RETRIEVE_ABSENT_DIRECTORIES);
 		
 		if (!options.isEmpty())
-			return (LocalOption[]) options.toArray(new LocalOption[options.size()]);
+			return options.toArray(new LocalOption[options.size()]);
 		
 		return Command.NO_LOCAL_OPTIONS;
 	}