From dfd589a8e5ed0d9aba65047c46559e4f4692ef27 Mon Sep 17 00:00:00 2001 From: Jens Johansen Date: Wed, 17 Feb 2021 10:17:19 +0000 Subject: [PATCH] [CFE] Remove ignored messages and the code issuing it Do keep ignored messages about extending, implementing and mixing in 'Function' though, as they should (at some point) be warnings or similar. Change-Id: I7571df6ade944d1e83136d9e686e0882007dca8a Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/184265 Commit-Queue: Jens Johansen Reviewed-by: Johnni Winther --- .../lib/src/messages/codes_generated.dart | 175 ------------------ .../src/fasta/builder/named_type_builder.dart | 18 -- .../fasta/kernel/expression_generator.dart | 6 - .../fasta/source/source_library_builder.dart | 41 +--- pkg/front_end/messages.yaml | 29 --- 5 files changed, 7 insertions(+), 262 deletions(-) diff --git a/pkg/_fe_analyzer_shared/lib/src/messages/codes_generated.dart b/pkg/_fe_analyzer_shared/lib/src/messages/codes_generated.dart index c8e1effc87d..bfcdff4ba1d 100644 --- a/pkg/_fe_analyzer_shared/lib/src/messages/codes_generated.dart +++ b/pkg/_fe_analyzer_shared/lib/src/messages/codes_generated.dart @@ -2391,32 +2391,6 @@ Message _withArgumentsDuplicatedExportInType(String name, Uri uri_, Uri uri2_) { arguments: {'name': name, 'uri': uri_, 'uri2': uri2_}); } -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -const Template - templateDuplicatedImport = - const Template( - messageTemplate: - r"""'#name' is imported from both '#uri' and '#uri2'.""", - withArguments: _withArgumentsDuplicatedImport); - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -const Code - codeDuplicatedImport = - const Code( - "DuplicatedImport", - severity: Severity.ignored); - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -Message _withArgumentsDuplicatedImport(String name, Uri uri_, Uri uri2_) { - if (name.isEmpty) throw 'No name provided'; - name = demangleMixinApplicationName(name); - String? uri = relativizeUri(uri_); - String? uri2 = relativizeUri(uri2_); - return new Message(codeDuplicatedImport, - message: """'${name}' is imported from both '${uri}' and '${uri2}'.""", - arguments: {'name': name, 'uri': uri_, 'uri2': uri2_}); -} - // DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. const Template templateDuplicatedImportInType = @@ -3243,33 +3217,6 @@ const MessageCode messageExportAfterPart = const MessageCode("ExportAfterPart", message: r"""Export directives must precede part directives.""", tip: r"""Try moving the export directives before the part directives."""); -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -const Template - templateExportHidesExport = - const Template( - messageTemplate: - r"""Export of '#name' (from '#uri') hides export from '#uri2'.""", - withArguments: _withArgumentsExportHidesExport); - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -const Code - codeExportHidesExport = - const Code( - "ExportHidesExport", - severity: Severity.ignored); - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -Message _withArgumentsExportHidesExport(String name, Uri uri_, Uri uri2_) { - if (name.isEmpty) throw 'No name provided'; - name = demangleMixinApplicationName(name); - String? uri = relativizeUri(uri_); - String? uri2 = relativizeUri(uri2_); - return new Message(codeExportHidesExport, - message: - """Export of '${name}' (from '${uri}') hides export from '${uri2}'.""", - arguments: {'name': name, 'uri': uri_, 'uri2': uri2_}); -} - // DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. const Code codeExportOptOutFromOptIn = messageExportOptOutFromOptIn; @@ -4625,33 +4572,6 @@ const MessageCode messageImportAfterPart = const MessageCode("ImportAfterPart", message: r"""Import directives must precede part directives.""", tip: r"""Try moving the import directives before the part directives."""); -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -const Template - templateImportHidesImport = - const Template( - messageTemplate: - r"""Import of '#name' (from '#uri') hides import from '#uri2'.""", - withArguments: _withArgumentsImportHidesImport); - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -const Code - codeImportHidesImport = - const Code( - "ImportHidesImport", - severity: Severity.ignored); - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -Message _withArgumentsImportHidesImport(String name, Uri uri_, Uri uri2_) { - if (name.isEmpty) throw 'No name provided'; - name = demangleMixinApplicationName(name); - String? uri = relativizeUri(uri_); - String? uri2 = relativizeUri(uri2_); - return new Message(codeImportHidesImport, - message: - """Import of '${name}' (from '${uri}') hides import from '${uri2}'.""", - arguments: {'name': name, 'uri': uri_, 'uri2': uri2_}); -} - // DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. const Code codeIncorrectTypeArgumentVariable = messageIncorrectTypeArgumentVariable; @@ -6254,30 +6174,6 @@ const MessageCode messageListLiteralTooManyTypeArguments = const MessageCode( analyzerCodes: ["EXPECTED_ONE_LIST_TYPE_ARGUMENTS"], message: r"""List literal requires exactly one type argument."""); -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -const Template< - Message Function(Uri uri_)> templateLoadLibraryHidesMember = const Template< - Message Function(Uri uri_)>( - messageTemplate: - r"""The library '#uri' defines a top-level member named 'loadLibrary'. This member is hidden by the special member 'loadLibrary' that the language adds to support deferred loading.""", - tipTemplate: r"""Try to rename or hide the member.""", - withArguments: _withArgumentsLoadLibraryHidesMember); - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -const Code codeLoadLibraryHidesMember = - const Code("LoadLibraryHidesMember", - severity: Severity.ignored); - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -Message _withArgumentsLoadLibraryHidesMember(Uri uri_) { - String? uri = relativizeUri(uri_); - return new Message(codeLoadLibraryHidesMember, - message: - """The library '${uri}' defines a top-level member named 'loadLibrary'. This member is hidden by the special member 'loadLibrary' that the language adds to support deferred loading.""", - tip: """Try to rename or hide the member.""", - arguments: {'uri': uri_}); -} - // DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. const Code codeLoadLibraryTakesNoArguments = messageLoadLibraryTakesNoArguments; @@ -6288,56 +6184,6 @@ const MessageCode messageLoadLibraryTakesNoArguments = const MessageCode( analyzerCodes: ["LOAD_LIBRARY_TAKES_NO_ARGUMENTS"], message: r"""'loadLibrary' takes no arguments."""); -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -const Template - templateLocalDefinitionHidesExport = - const Template( - messageTemplate: - r"""Local definition of '#name' hides export from '#uri'.""", - withArguments: _withArgumentsLocalDefinitionHidesExport); - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -const Code - codeLocalDefinitionHidesExport = - const Code( - "LocalDefinitionHidesExport", - severity: Severity.ignored); - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -Message _withArgumentsLocalDefinitionHidesExport(String name, Uri uri_) { - if (name.isEmpty) throw 'No name provided'; - name = demangleMixinApplicationName(name); - String? uri = relativizeUri(uri_); - return new Message(codeLocalDefinitionHidesExport, - message: """Local definition of '${name}' hides export from '${uri}'.""", - arguments: {'name': name, 'uri': uri_}); -} - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -const Template - templateLocalDefinitionHidesImport = - const Template( - messageTemplate: - r"""Local definition of '#name' hides import from '#uri'.""", - withArguments: _withArgumentsLocalDefinitionHidesImport); - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -const Code - codeLocalDefinitionHidesImport = - const Code( - "LocalDefinitionHidesImport", - severity: Severity.ignored); - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -Message _withArgumentsLocalDefinitionHidesImport(String name, Uri uri_) { - if (name.isEmpty) throw 'No name provided'; - name = demangleMixinApplicationName(name); - String? uri = relativizeUri(uri_); - return new Message(codeLocalDefinitionHidesImport, - message: """Local definition of '${name}' hides import from '${uri}'.""", - arguments: {'name': name, 'uri': uri_}); -} - // DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. const Code codeMainNotFunctionDeclaration = messageMainNotFunctionDeclaration; @@ -6509,27 +6355,6 @@ const MessageCode messageMissingExplicitConst = const MessageCode( message: r"""Constant expression expected.""", tip: r"""Try inserting 'const'."""); -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -const Template - templateMissingExplicitTypeArguments = - const Template( - messageTemplate: r"""No type arguments provided, #count possible.""", - withArguments: _withArgumentsMissingExplicitTypeArguments); - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -const Code codeMissingExplicitTypeArguments = - const Code("MissingExplicitTypeArguments", - severity: Severity.ignored); - -// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. -Message _withArgumentsMissingExplicitTypeArguments(int count) { - // ignore: unnecessary_null_comparison - if (count == null) throw 'No count provided'; - return new Message(codeMissingExplicitTypeArguments, - message: """No type arguments provided, ${count} possible.""", - arguments: {'count': count}); -} - // DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE. const Code codeMissingExponent = messageMissingExponent; diff --git a/pkg/front_end/lib/src/fasta/builder/named_type_builder.dart b/pkg/front_end/lib/src/fasta/builder/named_type_builder.dart index 1618af130d7..06789103ec3 100644 --- a/pkg/front_end/lib/src/fasta/builder/named_type_builder.dart +++ b/pkg/front_end/lib/src/fasta/builder/named_type_builder.dart @@ -21,7 +21,6 @@ import '../fasta_codes.dart' messageTypedefCause, noLength, templateExtendingRestricted, - templateMissingExplicitTypeArguments, templateNotAType, templateSupertypeIsIllegal, templateSupertypeIsTypeVariable, @@ -142,23 +141,6 @@ class NamedTypeBuilder extends TypeBuilder { } else if (member is TypeDeclarationBuilder) { declaration = member.origin; if (!declaration.isExtension) { - if (arguments == null && declaration.typeVariablesCount != 0) { - String typeName; - int typeNameOffset; - if (name is Identifier) { - typeName = name.name; - typeNameOffset = name.charOffset; - } else { - typeName = name; - typeNameOffset = charOffset; - } - library.addProblem( - templateMissingExplicitTypeArguments - .withArguments(declaration.typeVariablesCount), - typeNameOffset, - typeName.length, - fileUri); - } return; } } diff --git a/pkg/front_end/lib/src/fasta/kernel/expression_generator.dart b/pkg/front_end/lib/src/fasta/kernel/expression_generator.dart index 353fd1dba2e..c4074291099 100644 --- a/pkg/front_end/lib/src/fasta/kernel/expression_generator.dart +++ b/pkg/front_end/lib/src/fasta/kernel/expression_generator.dart @@ -2995,12 +2995,6 @@ class TypeUseGenerator extends ReadOnlyAccessGenerator { // as a recovery node once the IR can represent it (Issue #29840). arguments = null; } - } else if (declaration.typeVariablesCount != 0) { - _helper.addProblem( - templateMissingExplicitTypeArguments - .withArguments(declaration.typeVariablesCount), - fileOffset, - lengthForToken(token)); } List argumentBuilders; diff --git a/pkg/front_end/lib/src/fasta/source/source_library_builder.dart b/pkg/front_end/lib/src/fasta/source/source_library_builder.dart index a68f32c4d2b..b973591eb6e 100644 --- a/pkg/front_end/lib/src/fasta/source/source_library_builder.dart +++ b/pkg/front_end/lib/src/fasta/source/source_library_builder.dart @@ -2707,54 +2707,25 @@ class SourceLibraryBuilder extends LibraryBuilderImpl { AccessErrorBuilder error = other; other = error.builder; } - bool isLocal = false; - bool isLoadLibrary = false; Builder preferred; Uri uri; Uri otherUri; - Uri preferredUri; - Uri hiddenUri; if (scope.lookupLocalMember(name, setter: false) == declaration) { - isLocal = true; preferred = declaration; - hiddenUri = computeLibraryUri(other); } else { uri = computeLibraryUri(declaration); otherUri = computeLibraryUri(other); if (declaration is LoadLibraryBuilder) { - isLoadLibrary = true; preferred = declaration; - preferredUri = otherUri; } else if (other is LoadLibraryBuilder) { - isLoadLibrary = true; preferred = other; - preferredUri = uri; } else if (otherUri?.scheme == "dart" && uri?.scheme != "dart") { preferred = declaration; - preferredUri = uri; - hiddenUri = otherUri; } else if (uri?.scheme == "dart" && otherUri?.scheme != "dart") { preferred = other; - preferredUri = otherUri; - hiddenUri = uri; } } if (preferred != null) { - if (isLocal) { - Template template = isExport - ? templateLocalDefinitionHidesExport - : templateLocalDefinitionHidesImport; - addProblem(template.withArguments(name, hiddenUri), charOffset, - noLength, fileUri); - } else if (isLoadLibrary) { - addProblem(templateLoadLibraryHidesMember.withArguments(preferredUri), - charOffset, noLength, fileUri); - } else { - Template template = - isExport ? templateExportHidesExport : templateImportHidesImport; - addProblem(template.withArguments(name, preferredUri, hiddenUri), - charOffset, noLength, fileUri); - } return preferred; } if (declaration.next == null && other.next == null) { @@ -2770,15 +2741,17 @@ class SourceLibraryBuilder extends LibraryBuilderImpl { }); } } - Template template = - isExport ? templateDuplicatedExport : templateDuplicatedImport; - Message message = template.withArguments(name, uri, otherUri); - addProblem(message, charOffset, noLength, fileUri); + if (isExport) { + Template template = + templateDuplicatedExport; + Message message = template.withArguments(name, uri, otherUri); + addProblem(message, charOffset, noLength, fileUri); + } Template builderTemplate = isExport ? templateDuplicatedExportInType : templateDuplicatedImportInType; - message = builderTemplate.withArguments( + Message message = builderTemplate.withArguments( name, // TODO(ahe): We should probably use a context object here // instead of including URIs in this message. diff --git a/pkg/front_end/messages.yaml b/pkg/front_end/messages.yaml index 2ec998153f9..7b6082d13a8 100644 --- a/pkg/front_end/messages.yaml +++ b/pkg/front_end/messages.yaml @@ -1677,11 +1677,6 @@ LoadLibraryTakesNoArguments: template: "'loadLibrary' takes no arguments." analyzerCode: LOAD_LIBRARY_TAKES_NO_ARGUMENTS -LoadLibraryHidesMember: - template: "The library '#uri' defines a top-level member named 'loadLibrary'. This member is hidden by the special member 'loadLibrary' that the language adds to support deferred loading." - tip: "Try to rename or hide the member." - severity: IGNORED - TypeArgumentMismatch: template: "Expected #count type arguments." analyzerCode: WRONG_NUMBER_OF_TYPE_ARGUMENTS @@ -1925,26 +1920,10 @@ IncrementalCompilerIllegalParameter: IncrementalCompilerIllegalTypeParameter: template: "Illegal type parameter name '#string' found during expression compilation." -LocalDefinitionHidesExport: - template: "Local definition of '#name' hides export from '#uri'." - severity: IGNORED - -LocalDefinitionHidesImport: - template: "Local definition of '#name' hides import from '#uri'." - severity: IGNORED - DebugTrace: template: "Fatal '#name' at:\n#string" severity: IGNORED -ExportHidesExport: - template: "Export of '#name' (from '#uri') hides export from '#uri2'." - severity: IGNORED - -ImportHidesImport: - template: "Import of '#name' (from '#uri') hides import from '#uri2'." - severity: IGNORED - MissingPrefixInDeferredImport: index: 30 template: "Deferred imports should have a prefix." @@ -1991,10 +1970,6 @@ DuplicatedExport: DuplicatedExportInType: template: "'#name' is exported from both '#uri' and '#uri2'." -DuplicatedImport: - template: "'#name' is imported from both '#uri' and '#uri2'." - severity: IGNORED - DuplicatedImportInType: template: "'#name' is imported from both '#uri' and '#uri2'." analyzerCode: AMBIGUOUS_IMPORT @@ -3777,10 +3752,6 @@ InitializeFromDillUnknownProblemNoDump: frontendInternal: true external: test/incremental_load_from_invalid_dill_test.dart -MissingExplicitTypeArguments: - template: "No type arguments provided, #count possible." - severity: IGNORED - WebLiteralCannotBeRepresentedExactly: template: "The integer literal #string can't be represented exactly in JavaScript." tip: "Try changing the literal to something that can be represented in Javascript. In Javascript #string2 is the nearest value that can be represented exactly."