From d440f0711191c87100485a9ca5664c705f12b24c Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Sat, 1 Apr 2017 02:28:36 +0300 Subject: [PATCH] Use Java 7+ diamond operator in compiler modules --- .../kotlin/compilerRunner/ArgumentUtils.java | 2 +- .../kotlin/android/tests/ant/AntRunner.java | 2 +- .../android/tests/gradle/GradleRunner.java | 2 +- .../tests/CodegenTestsOnAndroidGenerator.java | 4 +- .../kotlin/codegen/AbstractClassBuilder.java | 2 +- .../AccessorForFunctionDescriptor.java | 2 +- .../kotlin/codegen/AnnotationCodegen.java | 14 +++--- .../org/jetbrains/kotlin/codegen/AsmUtil.java | 2 +- .../kotlin/codegen/ClassBodyCodegen.java | 2 +- .../kotlin/codegen/ClassFileFactory.java | 10 ++-- .../kotlin/codegen/ClosureCodegen.java | 4 +- .../kotlin/codegen/ExpressionCodegen.java | 26 +++++----- .../jetbrains/kotlin/codegen/FrameMap.java | 6 +-- .../FunctionReferenceGenerationStrategy.java | 9 ++-- .../codegen/ImplementationBodyCodegen.java | 17 +++---- .../kotlin/codegen/KotlinCodegenFacade.java | 8 +-- .../kotlin/codegen/MemberCodegen.java | 4 +- .../kotlin/codegen/PackageCodegenImpl.java | 4 +- .../kotlin/codegen/PackagePartCodegen.java | 4 +- .../codegen/TransformationMethodVisitor.java | 2 +- .../binding/CodegenAnnotatingVisitor.java | 8 +-- .../codegen/binding/CodegenBinding.java | 15 +++--- .../codegen/binding/MutableClosure.java | 9 ++-- .../codegen/context/CodegenContext.java | 6 +-- .../codegen/context/FieldOwnerContext.java | 5 +- .../inline/AnonymousObjectTransformer.java | 24 ++++----- .../kotlin/codegen/inline/InlineAdapter.java | 2 +- .../kotlin/codegen/inline/InlineCodegen.java | 7 ++- .../codegen/inline/InliningContext.java | 5 +- .../inline/InternalFinallyBlockInliner.java | 16 +++--- .../kotlin/codegen/inline/LambdaInfo.java | 2 +- .../MaxStackFrameSizeAndLocalsCalculator.java | 11 ++-- .../kotlin/codegen/inline/NameGenerator.java | 2 +- .../RedundantBoxedValuesCollection.java | 2 +- .../RedundantBoxingMethodTransformer.java | 4 +- .../transformer/MethodTransformer.java | 2 +- .../JvmSerializationBindings.java | 4 +- .../signature/BothSignatureWriter.java | 2 +- .../codegen/signature/JvmSignatureWriter.java | 4 +- .../when/MappingsClassesForWhenByEnum.java | 2 +- .../codegen/when/StringSwitchCodegen.java | 6 +-- .../kotlin/codegen/when/SwitchCodegen.java | 4 +- .../codegen/when/SwitchCodegenUtil.java | 4 +- .../codegen/when/WhenByEnumsMapping.java | 2 +- .../arguments/CommonCompilerArguments.java | 4 +- .../messages/GroupingMessageCollector.java | 2 +- .../cli/common/modules/ModuleXmlParser.java | 2 +- .../kotlin/cli/common/CLICompiler.java | 2 +- .../jetbrains/kotlin/cli/js/K2JSCompiler.java | 4 +- .../java/sam/SingleAbstractMethodUtils.java | 10 ++-- .../impl/JavaClassifierTypeImpl.java | 4 +- .../load/kotlin/FileBasedKotlinClass.java | 4 +- .../kotlin/resolve/jvm/AsmTypes.java | 2 +- .../kotlin/resolve/jvm/JavaResolverUtils.java | 11 ++-- .../resolve/jvm/KotlinJavaPsiFacade.java | 6 +-- .../diagnostics/DefaultErrorMessagesJvm.java | 2 +- .../SignaturesPropagationData.java | 4 +- .../kotlin/checkers/CheckerTestUtil.java | 14 +++--- .../kotlin/config/CompilerConfiguration.java | 2 +- .../config/CompilerConfigurationKey.java | 2 +- .../diagnostics/DiagnosticFactory0.java | 4 +- .../diagnostics/DiagnosticFactory1.java | 4 +- .../diagnostics/DiagnosticFactory2.java | 6 +-- .../diagnostics/DiagnosticFactory3.java | 4 +- .../rendering/DefaultErrorMessages.java | 2 +- .../DiagnosticFactoryToRendererMap.java | 2 +- .../rendering/TabledDescriptorRenderer.java | 2 +- .../org/jetbrains/kotlin/lexer/_JetLexer.java | 9 ++-- .../kotlin/parsing/AbstractKotlinParsing.java | 4 +- .../parsing/KotlinExpressionParsing.java | 6 +-- ...SemanticWhitespaceAwarePsiBuilderImpl.java | 4 +- .../org/jetbrains/kotlin/psi/KtPsiUtil.java | 4 +- .../KtPlaceHolderStubElementType.java | 5 +- .../stubs/elements/KtStubElementTypes.java | 50 +++++++++---------- .../kotlin/resolve/AnalyzingUtils.java | 2 +- .../resolve/AnnotationResolverImpl.java | 2 +- .../kotlin/resolve/BindingContext.java | 39 +++++++-------- .../kotlin/resolve/BindingContextUtils.java | 2 +- .../kotlin/resolve/BodyResolver.java | 4 +- .../kotlin/resolve/DescriptorResolver.java | 8 +-- .../resolve/TopDownAnalysisContext.java | 2 +- .../resolve/calls/ArgumentTypeResolver.java | 4 +- .../kotlin/resolve/calls/CallResolver.java | 14 +++--- .../ValueArgumentsToParametersMapper.java | 2 +- .../resolve/calls/checkers/InlineChecker.java | 2 +- .../CallCandidateResolutionContext.java | 6 +-- .../calls/inference/ConstraintsUtil.java | 2 +- .../model/DataFlowInfoForArgumentsImpl.java | 4 +- .../resolve/calls/model/ResolvedCallImpl.java | 8 +-- .../OverloadResolutionResultsImpl.java | 16 +++--- .../results/ResolutionResultsHandler.java | 4 +- .../calls/tasks/ResolutionCandidate.java | 10 ++-- .../kotlin/resolve/calls/util/CallMaker.java | 2 +- .../diagnostics/DiagnosticsElementsCache.java | 2 +- .../DiagnosticsWithSuppression.java | 3 +- .../kotlin/resolve/lazy/ResolveSession.java | 2 +- .../resolve/lazy/ResolveSessionUtils.java | 2 +- .../lazy/descriptors/LazyClassDescriptor.java | 4 +- .../LazyTypeParameterDescriptor.java | 4 +- .../kotlin/types/BoundsSubstitutor.java | 2 +- .../kotlin/types/CommonSupertypes.java | 31 ++++++------ .../jetbrains/kotlin/types/DeferredType.java | 4 +- .../kotlin/types/TypeIntersector.java | 8 +-- .../BasicExpressionTypingVisitor.java | 2 +- .../ControlStructureTypingUtils.java | 2 +- .../ControlStructureTypingVisitor.java | 2 +- .../types/expressions/DataFlowAnalyzer.java | 2 +- .../expressions/ExpressionTypingUtils.java | 2 +- .../kotlin/util/slicedMap/SlicedMapImpl.java | 2 +- .../kotlin/util/slicedMap/Slices.java | 12 ++--- .../util/slicedMap/TrackingSlicedMap.java | 6 +-- .../asJava/builder/StubClassBuilder.java | 2 +- .../asJava/finder/JavaElementFinder.java | 4 +- .../ProfilingInstrumenterExample.java | 9 ++-- .../InterceptionInstrumenter.java | 32 ++++++------ .../preloading/ClassPreloadingUtils.java | 10 ++-- .../preloading/MemoryBasedClassLoader.java | 4 +- .../kotlin/preloading/Preloader.java | 4 +- .../checkers/KotlinMultiFileTestWithJava.java | 2 +- .../codegen/AbstractBlackBoxCodegenTest.java | 4 +- .../AbstractCheckLocalVariablesTableTest.java | 2 +- ...bstractCompileKotlinAgainstKotlinTest.java | 2 +- .../codegen/AbstractLineNumberTest.java | 8 ++- ...AbstractTopLevelMembersInvocationTest.java | 2 +- .../kotlin/codegen/CodegenTestCase.java | 8 +-- .../kotlin/codegen/CodegenTestFiles.java | 4 +- .../kotlin/codegen/CodegenTestUtil.java | 4 +- .../codegen/flags/AbstractWriteFlagsTest.java | 2 +- .../forTestCompile/ForTestCompileRuntime.java | 10 ++-- .../jvm/compiler/ExpectedLoadErrorsUtil.java | 4 +- .../jvm/compiler/LoadDescriptorUtil.java | 4 +- .../resolve/ExpectedResolveDataUtil.java | 6 +-- .../kotlin/test/InTextDirectivesUtils.java | 6 +-- .../kotlin/test/JUnit3RunnerWithInners.java | 10 ++-- .../kotlin/test/KotlinTestUtils.java | 8 +-- .../kotlin/test/MockLibraryUtil.java | 12 ++--- .../test/testFramework/KtUsefulTestCase.java | 14 +++--- .../testFramework/mock/MockPsiManager.java | 2 +- .../util/RecursiveDescriptorComparator.java | 2 +- .../util/RecursiveDescriptorProcessor.java | 2 +- .../kotlin/cfg/AbstractControlFlowTest.java | 2 +- .../kotlin/cfg/CFGraphToDotFilePrinter.java | 2 +- .../jetbrains/kotlin/cli/AbstractCliTest.java | 4 +- .../kotlin/codegen/InnerClassInfoGenTest.java | 2 +- .../kotlin/codegen/PackageGenTest.java | 6 +-- .../integration/CompilerSmokeTestBase.java | 2 +- ...ompileKotlinAgainstCustomBinariesTest.java | 8 +-- .../org/jetbrains/kotlin/name/FqNameTest.java | 2 +- .../kotlin/storage/StorageManagerTest.java | 4 +- .../kotlin/types/KotlinTypeCheckerTest.java | 4 +- .../org/jetbrains/kotlin/utils/Interner.java | 2 +- .../org/jetbrains/kotlin/utils/Profiler.java | 2 +- .../frontend/GenerateKeywordStrings.java | 2 +- .../tests/generator/SimpleTestClassModel.java | 4 +- .../jetbrains/kotlin/js/config/JsConfig.java | 8 +-- .../js/translate/utils/AnnotationsUtils.java | 2 +- .../jetbrains/kotlin/js/inline/JsInliner.java | 6 +-- .../kotlin/integration/AntTaskJsTest.java | 2 +- .../jetbrains/kotlin/js/test/BasicTest.java | 2 +- .../CompileMavenGeneratedJSLibrary.java | 2 +- .../js/test/semantics/JsUnitTestBase.java | 2 +- .../kotlin/js/test/semantics/StdLibTest.java | 2 +- .../kotlin/js/test/utils/CallCounter.java | 8 +-- .../js/test/utils/DirectiveTestUtils.java | 14 +++--- .../kotlin/js/test/utils/JsTestUtils.java | 2 +- .../kotlin/js/facade/FacadeUtils.java | 2 +- .../kotlin/js/facade/K2JSTranslator.java | 6 +-- .../sourceMap/JsSourceGenerationVisitor.java | 2 +- .../js/sourceMap/SourceMap3Builder.java | 2 +- .../js/translate/context/StaticContext.java | 24 ++++----- .../translate/context/TranslationContext.java | 4 +- .../declaration/JsDataClassGenerator.java | 2 +- .../DestructuringDeclarationTranslator.java | 2 +- .../expression/ExpressionVisitor.java | 2 +- .../expression/StringTemplateTranslator.java | 2 +- .../translate/expression/WhenTranslator.java | 2 +- .../js/translate/general/Translation.java | 2 +- .../ClassInitializerTranslator.java | 6 +-- .../functions/FunctionIntrinsics.java | 2 +- .../factories/KotlinFunctionIntrinsic.java | 2 +- .../OverloadedAssignmentTranslator.java | 2 +- .../reference/AccessTranslationUtils.java | 2 +- .../reference/ArrayAccessTranslator.java | 2 +- .../reference/CallExpressionTranslator.java | 2 +- .../utils/FunctionBodyTranslator.java | 4 +- .../kotlin/js/translate/utils/JsAstUtils.java | 10 ++-- .../js/translate/utils/TranslationUtils.java | 2 +- 187 files changed, 512 insertions(+), 533 deletions(-) diff --git a/build-common/src/org/jetbrains/kotlin/compilerRunner/ArgumentUtils.java b/build-common/src/org/jetbrains/kotlin/compilerRunner/ArgumentUtils.java index fdcf4cce51b..dd59d5c012f 100644 --- a/build-common/src/org/jetbrains/kotlin/compilerRunner/ArgumentUtils.java +++ b/build-common/src/org/jetbrains/kotlin/compilerRunner/ArgumentUtils.java @@ -33,7 +33,7 @@ public class ArgumentUtils { @NotNull public static List convertArgumentsToStringList(@NotNull CommonCompilerArguments arguments) throws InstantiationException, IllegalAccessException { - List result = new ArrayList(); + List result = new ArrayList<>(); convertArgumentsToStringList(arguments, arguments.getClass().newInstance(), arguments.getClass(), result); result.addAll(arguments.freeArgs); return result; diff --git a/compiler/android-tests/src/org/jetbrains/kotlin/android/tests/ant/AntRunner.java b/compiler/android-tests/src/org/jetbrains/kotlin/android/tests/ant/AntRunner.java index 8f8430aeed6..128ea1fb06b 100644 --- a/compiler/android-tests/src/org/jetbrains/kotlin/android/tests/ant/AntRunner.java +++ b/compiler/android-tests/src/org/jetbrains/kotlin/android/tests/ant/AntRunner.java @@ -31,7 +31,7 @@ public class AntRunner { private final List listOfAntCommands; public AntRunner(PathManager pathManager) { - listOfAntCommands = new ArrayList(); + listOfAntCommands = new ArrayList<>(); String antCmdName = SystemInfo.isWindows ? "ant.bat" : "ant"; listOfAntCommands.add(pathManager.getAntBinDirectory() + "/" + antCmdName); listOfAntCommands.add("-Dsdk.dir=" + pathManager.getAndroidSdkRoot()); diff --git a/compiler/android-tests/src/org/jetbrains/kotlin/android/tests/gradle/GradleRunner.java b/compiler/android-tests/src/org/jetbrains/kotlin/android/tests/gradle/GradleRunner.java index 84d0d714daf..861ec87b475 100644 --- a/compiler/android-tests/src/org/jetbrains/kotlin/android/tests/gradle/GradleRunner.java +++ b/compiler/android-tests/src/org/jetbrains/kotlin/android/tests/gradle/GradleRunner.java @@ -30,7 +30,7 @@ public class GradleRunner { private final List listOfCommands; public GradleRunner(PathManager pathManager) { - listOfCommands = new ArrayList(); + listOfCommands = new ArrayList<>(); String cmdName = SystemInfo.isWindows ? "gradle.bat" : "gradle"; listOfCommands.add(pathManager.getGradleBinFolder() + "/" + cmdName); listOfCommands.add("--build-file"); diff --git a/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.java b/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.java index b355f39cb99..7a10a7bd6af 100644 --- a/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.java +++ b/compiler/android-tests/tests/org/jetbrains/kotlin/android/tests/CodegenTestsOnAndroidGenerator.java @@ -142,7 +142,7 @@ public class CodegenTestsOnAndroidGenerator extends KtUsefulTestCase { private final boolean isFullJdkAndRuntime; private final boolean inheritMultifileParts; - public List files = new ArrayList(); + public List files = new ArrayList<>(); private KotlinCoreEnvironment environment; private FilesWriter(boolean isFullJdkAndRuntime, boolean inheritMultifileParts) { @@ -175,7 +175,7 @@ public class CodegenTestsOnAndroidGenerator extends KtUsefulTestCase { public void writeFilesOnDisk() { writeFiles(files); - files = new ArrayList(); + files = new ArrayList<>(); environment = createEnvironment(isFullJdkAndRuntime); } diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/AbstractClassBuilder.java b/compiler/backend/src/org/jetbrains/kotlin/codegen/AbstractClassBuilder.java index d5fb78823d7..18894119676 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/AbstractClassBuilder.java +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/AbstractClassBuilder.java @@ -37,7 +37,7 @@ public abstract class AbstractClassBuilder implements ClassBuilder { private final JvmSerializationBindings serializationBindings = new JvmSerializationBindings(); - private final List fileMappings = new ArrayList(); + private final List fileMappings = new ArrayList<>(); private String sourceName; diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/AccessorForFunctionDescriptor.java b/compiler/backend/src/org/jetbrains/kotlin/codegen/AccessorForFunctionDescriptor.java index 3fb89d4d796..d10ac35b5e2 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/AccessorForFunctionDescriptor.java +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/AccessorForFunctionDescriptor.java @@ -56,7 +56,7 @@ public class AccessorForFunctionDescriptor extends AbstractAccessorForFunctionDe setSuspend(descriptor.isSuspend()); if (descriptor.getUserData(CoroutineCodegenUtilKt.INITIAL_DESCRIPTOR_FOR_SUSPEND_FUNCTION) != null) { - userDataMap = new LinkedHashMap, Object>(); + userDataMap = new LinkedHashMap<>(); userDataMap.put( CoroutineCodegenUtilKt.INITIAL_DESCRIPTOR_FOR_SUSPEND_FUNCTION, descriptor.getUserData(CoroutineCodegenUtilKt.INITIAL_DESCRIPTOR_FOR_SUSPEND_FUNCTION) diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/AnnotationCodegen.java b/compiler/backend/src/org/jetbrains/kotlin/codegen/AnnotationCodegen.java index fc3473c3a67..9c04353521d 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/AnnotationCodegen.java +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/AnnotationCodegen.java @@ -27,9 +27,11 @@ import org.jetbrains.kotlin.load.java.JvmAnnotationNames; import org.jetbrains.kotlin.name.FqName; import org.jetbrains.kotlin.resolve.AnnotationChecker; import org.jetbrains.kotlin.resolve.constants.*; -import org.jetbrains.kotlin.resolve.constants.StringValue; import org.jetbrains.kotlin.resolve.descriptorUtil.DescriptorUtilsKt; -import org.jetbrains.kotlin.types.*; +import org.jetbrains.kotlin.types.FlexibleType; +import org.jetbrains.kotlin.types.FlexibleTypesKt; +import org.jetbrains.kotlin.types.KotlinType; +import org.jetbrains.kotlin.types.TypeUtils; import org.jetbrains.org.objectweb.asm.*; import java.lang.annotation.*; @@ -87,7 +89,7 @@ public abstract class AnnotationCodegen { return; } - Set annotationDescriptorsAlreadyPresent = new HashSet(); + Set annotationDescriptorsAlreadyPresent = new HashSet<>(); Annotations annotations = annotated.getAnnotations(); @@ -200,8 +202,7 @@ public abstract class AnnotationCodegen { generateAnnotationIfNotPresent(annotationDescriptorsAlreadyPresent, annotationClass); } - private static final Map annotationTargetMap = - new EnumMap(KotlinTarget.class); + private static final Map annotationTargetMap = new EnumMap<>(KotlinTarget.class); static { annotationTargetMap.put(KotlinTarget.CLASS, ElementType.TYPE); @@ -418,8 +419,7 @@ public abstract class AnnotationCodegen { value.accept(argumentVisitor, null); } - private static final Map annotationRetentionMap = - new EnumMap(KotlinRetention.class); + private static final Map annotationRetentionMap = new EnumMap<>(KotlinRetention.class); static { annotationRetentionMap.put(KotlinRetention.SOURCE, RetentionPolicy.SOURCE); diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/AsmUtil.java b/compiler/backend/src/org/jetbrains/kotlin/codegen/AsmUtil.java index 1dc3b825a74..829f0beb956 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/AsmUtil.java +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/AsmUtil.java @@ -445,7 +445,7 @@ public class AsmUtil { } public static void genClosureFields(@NotNull CalculatedClosure closure, ClassBuilder v, KotlinTypeMapper typeMapper) { - List> allFields = new ArrayList>(); + List> allFields = new ArrayList<>(); ClassifierDescriptor captureThis = closure.getCaptureThis(); if (captureThis != null) { diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/ClassBodyCodegen.java b/compiler/backend/src/org/jetbrains/kotlin/codegen/ClassBodyCodegen.java index 7872cb03582..a63fe746699 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/ClassBodyCodegen.java +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/ClassBodyCodegen.java @@ -54,7 +54,7 @@ public abstract class ClassBodyCodegen extends MemberCodegen companions = new ArrayList(); + List companions = new ArrayList<>(); if (kind != OwnerKind.DEFAULT_IMPLS) { //generate nested classes first and only then generate class body. It necessary to access to nested CodegenContexts for (KtDeclaration declaration : myClass.getDeclarations()) { diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/ClassFileFactory.java b/compiler/backend/src/org/jetbrains/kotlin/codegen/ClassFileFactory.java index cd0fe845cfd..5e93da4ecb7 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/ClassFileFactory.java +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/ClassFileFactory.java @@ -42,12 +42,12 @@ import static org.jetbrains.kotlin.codegen.JvmCodegenUtil.getMappingFileName; public class ClassFileFactory implements OutputFileCollection { private final GenerationState state; private final ClassBuilderFactory builderFactory; - private final Map generators = new LinkedHashMap(); + private final Map generators = new LinkedHashMap<>(); private boolean isDone = false; - private final Set packagePartSourceFiles = new HashSet(); - private final Map partsGroupedByPackage = new LinkedHashMap(); + private final Set packagePartSourceFiles = new HashSet<>(); + private final Map partsGroupedByPackage = new LinkedHashMap<>(); public ClassFileFactory(@NotNull GenerationState state, @NotNull ClassBuilderFactory builderFactory) { this.state = state; @@ -153,7 +153,7 @@ public class ClassFileFactory implements OutputFileCollection { @NotNull @TestOnly public Map createTextForEachFile() { - Map answer = new LinkedHashMap(); + Map answer = new LinkedHashMap<>(); for (OutputFile file : asList()) { answer.put(file.getRelativePath(), file.asText()); } @@ -188,7 +188,7 @@ public class ClassFileFactory implements OutputFileCollection { @NotNull private static List toIoFilesIgnoringNonPhysical(@NotNull Collection psiFiles) { - List result = new ArrayList(psiFiles.size()); + List result = new ArrayList<>(psiFiles.size()); for (PsiFile psiFile : psiFiles) { VirtualFile virtualFile = psiFile.getVirtualFile(); // We ignore non-physical files here, because this code is needed to tell the make what inputs affect which outputs diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/ClosureCodegen.java b/compiler/backend/src/org/jetbrains/kotlin/codegen/ClosureCodegen.java index 3d3ee4ddc20..be1dd432955 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/ClosureCodegen.java +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/ClosureCodegen.java @@ -100,7 +100,7 @@ public class ClosureCodegen extends MemberCodegen { this.strategy = strategy; if (samType == null) { - this.superInterfaceTypes = new ArrayList(); + this.superInterfaceTypes = new ArrayList<>(); KotlinType superClassType = null; for (KotlinType supertype : classDescriptor.getTypeConstructor().getSupertypes()) { @@ -252,7 +252,7 @@ public class ClosureCodegen extends MemberCodegen { @NotNull private static FunctionDescriptor createFreeLambdaDescriptor(@NotNull FunctionDescriptor descriptor) { FunctionDescriptor.CopyBuilder builder = descriptor.newCopyBuilder(); - List typeParameters = new ArrayList(0); + List typeParameters = new ArrayList<>(0); builder.setTypeParameters(typeParameters); DeclarationDescriptor container = descriptor.getContainingDeclaration(); diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/ExpressionCodegen.java b/compiler/backend/src/org/jetbrains/kotlin/codegen/ExpressionCodegen.java index 1715b58b0bc..d4ae9304e3d 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/ExpressionCodegen.java +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/ExpressionCodegen.java @@ -130,7 +130,7 @@ public class ExpressionCodegen extends KtVisitor impleme private final TailRecursionCodegen tailRecursionCodegen; public final CallGenerator defaultCallGenerator = new CallGenerator.DefaultCallGenerator(this); - private final Stack blockStackElements = new Stack(); + private final Stack blockStackElements = new Stack<>(); /* * When we create a temporary variable to hold some value not to compute it many times @@ -189,7 +189,7 @@ public class ExpressionCodegen extends KtVisitor impleme } static class FinallyBlockStackElement extends BlockStackElement { - List