Danny Tuppeny
6c33457014
[analyzer] Add support for multiline TODO comments
...
Fixes https://github.com/Dart-Code/Dart-Code/issues/3030 .
Change-Id: I97b885ee49573514560bc0452fd84793e04ee5df
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178680
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2021-01-12 19:08:02 +00:00
Danny Tuppeny
c818059287
[Analyzer] Report EXTRA_POSITIONAL_ARGUMENTS and EXTRA_POSITIONAL_ARGUMENTS_COULD_BE_NAMED against first unmatched argument
...
Fixes #44598 .
Change-Id: I6bccf4f5448de024f27d0ed1ba51c730e22b6fe9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178020
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2021-01-11 18:46:26 +00:00
Jens Johansen
f7052cfbbc
[parser] Better handling of eof when parsing 'Stream<List<>>'
...
This CL avoids the infinite loop created by allowing the parser
to parse it as a complex type (despite no actual name after it) and
adds a few asserts in an attempt to catch rewriting on eof (setting a
token after eof).
Fixes #42229
Fixes #44477
Change-Id: Ie2da0957894067a3d4748cb6384bc9d6cf32c215
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150521
Commit-Queue: Jens Johansen <jensj@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2021-01-11 09:55:06 +00:00
Sam Rawlins
897235204e
Split use_of_nullable_value into separate codes with more friendly
...
messages.
* UNCHECKED_INVOCATION_OF_NULLABLE_VALUE
* UNCHECKED_METHOD_INVOCATION_OF_NULLABLE_VALUE
* UNCHECKED_OPERATOR_INVOCATION_OF_NULLABLE_VALUE
* UNCHECKED_PROPERTY_ACCESS_OF_NULLABLE_VALUE
* UNCHECKED_USE_OF_NULLABLE_VALUE_AS_CONDITION
* UNCHECKED_USE_OF_NULLABLE_VALUE_AS_ITERATOR
* UNCHECKED_USE_OF_NULLABLE_VALUE_IN_SPREAD
* UNCHECKED_USE_OF_NULLABLE_VALUE_IN_YIELD_EACH
Additionally, improve the ADD_NULL_CHECK quick fix by supporting
expressions which need to be null-checked in a for-each, a yield-each,
and a spread.
Bug: https://github.com/dart-lang/sdk/issues/44603
Change-Id: Ie493a2dc1c05b64a16fd17c77d3468e8d562c497
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/178080
Commit-Queue: Samuel Rawlins <srawlins@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2021-01-08 21:07:02 +00:00
Paul Berry
88cd4739b8
Flow analysis: switch on inference based on local boolean variables.
...
The implementation was completed in previous CLs, but hidden behind a
flag. This CL switches on the feature and adds integration tests.
Bug: https://github.com/dart-lang/language/issues/1274
Change-Id: I0e2d7ac96d3a6d68d33d49f1eab5c341c9167f6f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175500
Commit-Queue: Paul Berry <paulberry@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2021-01-08 18:57:02 +00:00
Daco Harkes
28a228b64b
[analyzer/ffi] Add tests for #44584
...
Add tests for analyzer and CFE covering `Pointer<void>` and
`Pointer<NativeFunction>` when used in `lookupFunction`.
Both were missing in test suites.
Added TODOs for the things that need to be addressed.
Issue: https://github.com/dart-lang/sdk/issues/44584
Issue: https://github.com/dart-lang/sdk/issues/44593
Issue: https://github.com/dart-lang/sdk/issues/44594
Change-Id: I24ce7caa1a20af51e14e75a7fa83578e00a2b440
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177700
Commit-Queue: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2021-01-06 19:26:30 +00:00
Brian Wilkerson
9453c76e22
Remove a hint code that is not being generated
...
Change-Id: Ifdc94c2d8dbcdeaf24ee938532c9f3a93c497e3e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177540
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2021-01-06 18:20:56 +00:00
Konstantin Shcheglov
17b43ca846
Issue 44353. Fix adding duplicate relavance tags for available declarations in parts.
...
Bug: https://github.com/dart-lang/sdk/issues/44353
Bug: https://github.com/flutter/flutter-intellij/issues/5108
Change-Id: I6a5f04a7f44d12466799c10bac720189bd4b0612
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177640
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2021-01-05 22:43:38 +00:00
Darren Chan
1dc9c56f34
[analyzer] Fix GnWorkspaceTest for Windows.
...
Use convertPath to account for Windows vs non-Windows path seperators.
Change-Id: I9115c04acc986161d120fb363627fe2e302831f3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177604
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Darren Chan <chandarren@google.com >
2021-01-05 17:42:09 +00:00
Darren Chan
bb19112f22
[analyzer] Use package_config in GN workspaces.
...
Per http://fxr/445334 , .packages files are no longer used within the
fuchsia tree. This inadvertently caused http://fxb/65752 , where vscode
integration is broken.
This cl fixes this by updating _findPackagesFile to look for
`*package_config.json` files instead of `.packages` files.
Fixed: http://fxb/65752
Change-Id: I676fcecff49fd980255391555daca3ce5d5d9de9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176540
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Darren Chan <chandarren@google.com >
2021-01-05 14:43:38 +00:00
Konstantin Shcheglov
ea775a6a0f
Migrate SearchEngineImplTest to AnalysisContextCollection.
...
Change-Id: Ide259d4baf2a309a08ae74019ecb95d54d97f365
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/177440
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2021-01-02 19:21:16 +00:00
Konstantin Shcheglov
bb8669aadf
Remove 'unresolvedFile' from FileState.
...
Having a FileState with `null` part and URI poisons null safety migration.
Change-Id: Idd3b484591d1ca6f48eabb7f5614abfdcf6ff9bf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176720
Reviewed-by: Samuel Rawlins <srawlins@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-23 23:17:36 +00:00
Keerti Parthasarathy
0f71acfcf3
Consider dart lang as third party for options file.
...
Change-Id: I40b07053815a79fe870b5434a4cda93959cec497
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176323
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Keerti Parthasarathy <keertip@google.com >
2020-12-16 16:22:52 +00:00
Konstantin Shcheglov
ac18a7ba91
Implement search for TypeAliasElement.
...
Change-Id: I14c931277432d95c8ed2ae48d5339a878966ddc5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176402
Reviewed-by: Samuel Rawlins <srawlins@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-16 04:02:31 +00:00
Konstantin Shcheglov
f8a6ac8fd4
Fix SearchTest on Windows.
...
TBR
Change-Id: Ic973ea701247236ab460b631aa6c0f0ce4622c08
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176401
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2020-12-16 01:13:20 +00:00
Konstantin Shcheglov
02edd6c182
Migrate SearchTest to PubPackageResolutionTest.
...
Change-Id: Ife51f8eb24bbb50e0f4bba4fa8358ec1f3a9368c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176400
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-12-16 01:05:09 +00:00
Sam Rawlins
cad324cf79
Analyzer: Extract all parser tests to individual files
...
Change-Id: Ia3f85355186e25d4cc38fcb15ed3770a1db5805c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176360
Commit-Queue: Samuel Rawlins <srawlins@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2020-12-15 22:57:21 +00:00
Konstantin Shcheglov
a64db87a71
Test that legacy code that use non-function type aliases.
...
Change-Id: I8b80c2eb6f2ccc9a1d523e4350a47715cde1c411
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176322
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-12-15 22:42:51 +00:00
Konstantin Shcheglov
c272975f92
Report errors when non-function type alias expands to a type parameter.
...
Change-Id: Ibed352c45972f1ff6477566a2c2dcf98839fb44b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176321
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-15 21:57:01 +00:00
Konstantin Shcheglov
9f0f569eaf
Fix TopLevelInferenceTest on Windows.
...
Change-Id: I77f1fa123335325718cac7dbd4ec8a535fa618a5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176320
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-12-15 20:02:45 +00:00
Konstantin Shcheglov
18e157f62e
Test indexing of non-function type aliases.
...
Change-Id: I6c4fd466a06a2c3e6767f5e7f31cc2c671ba8ef5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176220
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-15 07:21:34 +00:00
Konstantin Shcheglov
c11039702c
Replace FindElement.functionTypeAlias() with typeAlias().
...
Change-Id: I88a5b889310df8a39b54318907ba8bbd68b26b9b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176183
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-15 07:13:41 +00:00
Sam Rawlins
13f9993511
Analyzer: Extract parser test base classes, helpers
...
Each of the *_Fasta test cases has a lot of test cases from the
corresponding *Mixin mixin. I started to combine _all_ of these
in parser_test.dart, but the file became too long; the formatter
was freezing IntelliJ.
So I've extracted out the non-test classes into parser_test_base.dart.
I'd like to extract each test class into its own file. For now, I
reduce half a dozen *_Fasta/*Mixin pairs into individual test classes.
Change-Id: I8dd7f28a6fe23e31f956cdb2f1d221669db376dc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176064
Commit-Queue: Samuel Rawlins <srawlins@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-12-15 03:57:59 +00:00
Konstantin Shcheglov
ced8f5d1d8
Migrate IndexTest to PubPackageResolutionTest.
...
Change-Id: Idf285edac51c2bec5b1b57b4a831889156c795ed
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176181
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-15 02:10:20 +00:00
Konstantin Shcheglov
17c6567054
Use FindElement in SearchTest and remove findChildElement().
...
Change-Id: I78d0c0fe7ae5a1453167b28fedeb79d3e53b7d29
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176160
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-15 00:42:09 +00:00
Konstantin Shcheglov
49332e66fd
Use assertSimpleIdentifierAssignmentTarget() more, assertSimpleIdentifier(element).
...
Change-Id: Ib484c676d65cdcbdb19e53d5b8dadfd4054408c3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176068
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-15 00:16:09 +00:00
Konstantin Shcheglov
7324bb164f
Switch IndexTest to FindElement.
...
R=brianwilkerson@google.com
Change-Id: I4d947350ea17211b2025f2f18c703ac2866cd068
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176065
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-14 22:36:39 +00:00
Konstantin Shcheglov
9717c775e4
Deprecate FunctionTypeAliasElement.function
...
Change-Id: Id629afa92c6681ba796aed75b24c4251fd86810f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176140
Reviewed-by: Samuel Rawlins <srawlins@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-14 22:26:29 +00:00
Sam Rawlins
33a9d169ef
Analyzer: prepare for null safety with explicit casts, and boolean defaults
...
Change-Id: Ic2e13b96903b9e23ad86ae1af86b912ac1a8636c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176040
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Samuel Rawlins <srawlins@google.com >
2020-12-14 17:13:48 +00:00
Paul Berry
5780cacbdb
Don't pass null to fasta.Parser.
...
Fixes null safety errors arising from the migration of _fe_analyzer_shared.
Change-Id: I7da6b7f2d7c23d5d8f6ed120e03aed754aff5b82
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176061
Commit-Queue: Paul Berry <paulberry@google.com >
Commit-Queue: Ivan Inozemtsev <iinozemtsev@google.com >
Auto-Submit: Paul Berry <paulberry@google.com >
Reviewed-by: Ivan Inozemtsev <iinozemtsev@google.com >
2020-12-14 15:55:39 +00:00
Konstantin Shcheglov
72b0d2a297
Terminate null shorting for FunctionExpressionInvocation.
...
FAILURE: (:s=0?.1(I
['package:_fe_analyzer_shared/src/flow_analysis/flow_analysis.dart': Failed assertion: line 2785 pos 12: '_stack.isEmpty': is not true.
#0 _AssertionError._doThrowNew (dart:core-patch/errors_patch.dart:46:39)
#1 _AssertionError._throwNew (dart:core-patch/errors_patch.dart:36:5)
#2 _FlowAnalysisImpl.finish (package:_fe_analyzer_shared/src/flow_analysis/flow_analysis.dart:2785:12)
#3 FlowAnalysisHelper.topLevelDeclaration_exit (package:analyzer/src/dart/resolver/flow_analysis_visitor.dart:224:10)
#4 AstResolver.resolve (package:analyzer/src/summary2/ast_resolver.dart:88:21)
#5 _VariableInferenceNode._resolveInitializer (package:analyzer/src/summary2/top_level_inference.dart:466:17)
#6 _VariableInferenceNode.computeDependencies (package:analyzer/src/summary2/top_level_inference.dart:393:5)
#7 Node.getDependencies (package:analyzer/src/summary/link.dart:148:40)
#8 DependencyWalker.walk.strongConnect (package:analyzer/src/summary/link.dart:53:40)
#9 DependencyWalker.walk (package:analyzer/src/summary/link.dart:119:18)
#10 _InferenceWalker.walkNodes (package:analyzer/src/summary2/top_level_inference.dart:254:9)
#11 _InitializerInference.perform (package:analyzer/src/summary2/top_level_inference.dart:287:13)
#12 TopLevelInference.infer (package:analyzer/src/summary2/top_level_inference.dart:111:26)
#13 Linker._performTopLevelInference (package:analyzer/src/summary2/link.dart:183:29)
#14 Linker._buildOutlines (package:analyzer/src/summary2/link.dart:93:5)
#15 Linker.link (package:analyzer/src/summary2/link.dart:76:5)
#16 link (package:analyzer/src/summary2/link.dart:33:10)
#17 LibraryContext.load2.loadBundle (package:analyzer/src/dart/analysis/library_context.dart:227:24)
#18 LibraryContext.load2.<anonymous closure> (package:analyzer/src/dart/analysis/library_context.dart:258:17)
#19 PerformanceLog.run (package:analyzer/src/dart/analysis/performance_logger.dart:32:15)
#20 LibraryContext.load2 (package:analyzer/src/dart/analysis/library_context.dart:256:12)
#21 new LibraryContext (package:analyzer/src/dart/analysis/library_context.dart:78:5)
#22 AnalysisDriver._createLibraryContext.<anonymous closure> (package:analyzer/src/dart/analysis/driver.dart:1538:27)
#23 _rootRun (dart:async/zone.dart:1186:13)
#24 _CustomZone.run (dart:async/zone.dart:1090:19)
#25 _runZoned (dart:async/zone.dart:1626:10)
#26 runZoned (dart:async/zone.dart:1546:10)
#27 NullSafetyUnderstandingFlag.enableNullSafetyTypes (package:analyzer/dart/element/null_safety_understanding_flag.dart:42:12)
#28 AnalysisDriver._createLibraryContext (package:analyzer/src/dart/analysis/driver.dart:1536:33)
#29 AnalysisDriver._computeResolvedLibrary2.<anonymous closure> (package:analyzer/src/dart/analysis/driver.dart:1402:28)
Change-Id: I6b91c6bd89d6e0430a36ded992d8dca82bfedbff
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175961
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-12-14 08:56:08 +00:00
Konstantin Shcheglov
57fa20a8a5
Fix crash for no flow in annotation.
...
FAILURE: class=class<@((){x:
[NoSuchMethodError: The method 'labeledStatement_begin' was called on null.
Receiver: null
Tried calling: labeledStatement_begin(Instance of 'LabeledStatementImpl'), #0 Object.noSuchMethod (dart:core-patch/object_patch.dart:54:5)
#1 FlowAnalysisHelper.labeledStatement_enter (package:analyzer/src/dart/resolver/flow_analysis_visitor.dart:196:10)
#2 ResolverVisitor.visitLabeledStatement (package:analyzer/src/generated/resolver.dart:1636:20)
#3 LabeledStatementImpl.accept (package:analyzer/src/dart/ast/ast.dart:6520:49)
#4 NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:7611:20)
#5 BlockImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:1087:17)
#6 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1749:10)
#7 UnifyingAstVisitor.visitBlock (package:analyzer/dart/ast/visitor.dart:3143:31)
#8 ScopedVisitor.visitBlock.<anonymous closure> (package:analyzer/src/generated/resolver.dart:2473:13)
#9 ScopedVisitor._withDeclaredLocals (package:analyzer/src/generated/resolver.dart:3067:8)
#10 ScopedVisitor.visitBlock (package:analyzer/src/generated/resolver.dart:2472:5)
#11 BlockImpl.accept (package:analyzer/src/dart/ast/ast.dart:1083:49)
#12 BlockFunctionBodyImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:1042:13)
#13 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1749:10)
#14 UnifyingAstVisitor.visitBlockFunctionBody (package:analyzer/dart/ast/visitor.dart:3146:55)
#15 ScopedVisitor.visitBlockFunctionBody (package:analyzer/src/generated/resolver.dart:2482:13)
#16 ResolverVisitor.visitBlockFunctionBody (package:analyzer/src/generated/resolver.dart:957:13)
#17 BlockFunctionBodyImpl.accept (package:analyzer/src/dart/ast/ast.dart:1038:49)
#18 FunctionExpressionImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:5010:12)
#19 FunctionExpressionResolver.resolve (package:analyzer/src/dart/resolver/function_expression_resolver.dart:65:10)
#20 ResolverVisitor.visitFunctionExpression (package:analyzer/src/generated/resolver.dart:1460:37)
#21 FunctionExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:5004:49)
#22 ResolverVisitor.visitArgumentList (package:analyzer/src/generated/resolver.dart:887:20)
#23 ArgumentListImpl.accept (package:analyzer/src/dart/ast/ast.dart:355:49)
#24 AnnotationResolver.resolve (package:analyzer/src/dart/resolver/annotation_resolver.dart:35:21)
#25 ResolverVisitor.visitAnnotation (package:analyzer/src/generated/resolver.dart:823:30)
#26 AnnotationImpl.accept (package:analyzer/src/dart/ast/ast.dart:280:49)
#27 NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:7611:20)
#28 AnnotatedNodeImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:148:17)
#29 TypeParameterImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:10298:11)
#30 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1749:10)
#31 UnifyingAstVisitor.visitTypeParameter (package:analyzer/dart/ast/visitor.dart:3475:47)
#32 TypeParameterImpl.accept (package:analyzer/src/dart/ast/ast.dart:10294:49)
#33 NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:7611:20)
#34 TypeParameterListImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:10346:21)
#35 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1749:10)
#36 UnifyingAstVisitor.visitTypeParameterList (package:analyzer/dart/ast/visitor.dart:3478:55)
#37 TypeParameterListImpl.accept (package:analyzer/src/dart/ast/ast.dart:10342:49)
#38 ScopedVisitor.visitClassDeclarationInScope (package:analyzer/src/generated/resolver.dart:2533:26)
#39 ScopedVisitor.visitClassDeclaration (package:analyzer/src/generated/resolver.dart:2521:7)
#40 ResolverVisitor.visitClassDeclaration (package:analyzer/src/generated/resolver.dart:1015:13)
#41 ClassDeclarationImpl.accept (package:analyzer/src/dart/ast/ast.dart:1536:49)
#42 ResolverVisitor.visitCompilationUnit (package:analyzer/src/generated/resolver.dart:1091:23)
#43 CompilationUnitImpl.accept (package:analyzer/src/dart/ast/ast.dart:2134:49)
#44 LibraryAnalyzer._resolveFile (package:analyzer/src/dart/analysis/library_analyzer.dart:706:10)
#45 LibraryAnalyzer.analyzeSync.<anonymous closure> (package:analyzer/src/dart/analysis/library_analyzer.dart:139:7)
Change-Id: I13a10d2c127528aa9166e82a5ae535ddbbb8a022
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175943
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-14 05:58:23 +00:00
Konstantin Shcheglov
34939ac7b8
Resolve default values of nested parameters of function typed formal parameters.
...
FAILURE: /((=#is!?}=
[NoSuchMethodError: The getter 'nullabilitySuffix' was called on null.
Receiver: null
Tried calling: nullabilitySuffix, #0 Object.noSuchMethod (dart:core-patch/object_patch.dart:54:5)
#1 SubtypeHelper.isSubtypeOf (package:analyzer/src/dart/element/subtype.dart:50:29)
#2 TypeSystemImpl.isSubtypeOf2 (package:analyzer/src/dart/element/type_system.dart:1131:27)
#3 DartObjectImpl.hasType (package:analyzer/src/dart/constant/value.dart:487:41)
#4 DartObjectComputer.typeTest (package:analyzer/src/dart/constant/evaluation.dart:2159:44)
#5 ConstantVisitor.visitIsExpression (package:analyzer/src/dart/constant/evaluation.dart:1230:34)
#6 IsExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:6463:49)
#7 ConstantVisitor.visitConditionalExpression (package:analyzer/src/dart/constant/evaluation.dart:1104:48)
#8 ConditionalExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:2265:15)
#9 ConstantEvaluationEngine.computeConstantValue (package:analyzer/src/dart/constant/evaluation.dart:159:16)
#10 _ConstantWalker.evaluate (package:analyzer/src/dart/constant/compute.dart:57:32)
#11 DependencyWalker.walk.strongConnect (package:analyzer/src/summary/link.dart:100:13)
#12 DependencyWalker.walk (package:analyzer/src/summary/link.dart:119:18)
#13 computeConstants (package:analyzer/src/dart/constant/compute.dart:26:14)
#14 LibraryAnalyzer._computeConstants (package:analyzer/src/dart/analysis/library_analyzer.dart:259:5)
#15 LibraryAnalyzer.analyzeSync (package:analyzer/src/dart/analysis/library_analyzer.dart:145:5)
#16 LibraryAnalyzer.analyze (package:analyzer/src/dart/analysis/library_analyzer.dart:107:12)
#17 AnalysisDriver._computeResolvedLibrary2.<anonymous closure> (package:analyzer/src/dart/analysis/driver.dart:1414:65)
#18 PerformanceLog.run (package:analyzer/src/dart/analysis/performance_logger.dart:32:15)
#19 AnalysisDriver._computeResolvedLibrary2 (package:analyzer/src/dart/analysis/driver.dart:1400:20)
#20 AnalysisDriver._computeResolvedLibrary.<anonymous closure> (package:analyzer/src/dart/analysis/driver.dart:1393:15)
#21 _rootRun (dart:async/zone.dart:1186:13)
#22 _CustomZone.run (dart:async/zone.dart:1090:19)
#23 _runZoned (dart:async/zone.dart:1626:10)
#24 runZoned (dart:async/zone.dart:1546:10)
#25 NullSafetyUnderstandingFlag.enableNullSafetyTypes (package:analyzer/dart/element/null_safety_understanding_flag.dart:42:12)
#26 AnalysisDriver._computeResolvedLibrary (package:analyzer/src/dart/analysis/driver.dart:1392:40)
#27 AnalysisDriver.performWork (package:analyzer/src/dart/analysis/driver.dart:962:22)
#28 AnalysisDriverScheduler._run (package:analyzer/src/dart/analysis/driver.dart:2013:24)
Change-Id: I1d5482390a7d76cccbfbdf1dd871f9473ce2826a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175944
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-14 05:50:17 +00:00
Konstantin Shcheglov
d2e5d475bc
Fix for crash when annotation references synthtic constructor of a generic class alias.
...
FAILURE: mixi@:class<s=a(=m
[NoSuchMethodError: The getter 'enclosingElement' was called on null.
Receiver: null
Tried calling: enclosingElement, #0 Object.noSuchMethod (dart:core-patch/object_patch.dart:54:5)
#1 LinkedResolutionReader.nextElement (package:analyzer/src/summary2/bundle_reader.dart:602:22)
#2 ApplyResolutionVisitor._nextElement (package:analyzer/src/summary2/apply_resolution.dart:1106:24)
#3 ApplyResolutionVisitor.visitAnnotation (package:analyzer/src/summary2/apply_resolution.dart:83:20)
#4 AnnotationImpl.accept (package:analyzer/src/dart/ast/ast.dart:280:49)
#5 NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:7611:20)
#6 ApplyResolutionVisitor.visitClassTypeAlias (package:analyzer/src/summary2/apply_resolution.dart:167:20)
#7 ClassTypeAliasImpl.accept (package:analyzer/src/dart/ast/ast.dart:1794:49)
#8 LinkedContext.applyResolution (package:analyzer/src/summary2/bundle_reader.dart:512:11)
#9 LinkedUnitContext.applyResolution (package:analyzer/src/summary2/linked_unit_context.dart:93:25)
#10 ElementImpl.metadata (package:analyzer/src/dart/element/element.dart:2893:21)
#11 ResolutionVisitor.visitClassTypeAlias (package:analyzer/src/dart/resolver/resolution_visitor.dart:256:51)
#12 ClassTypeAliasImpl.accept (package:analyzer/src/dart/ast/ast.dart:1794:49)
#13 NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:7611:20)
#14 CompilationUnitImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:2141:21)
#15 RecursiveAstVisitor.visitCompilationUnit (package:analyzer/dart/ast/visitor.dart:731:10)
#16 CompilationUnitImpl.accept (package:analyzer/src/dart/ast/ast.dart:2134:49)
#17 LibraryAnalyzer._resolveFile (package:analyzer/src/dart/analysis/library_analyzer.dart:680:10)
#18 LibraryAnalyzer.analyzeSync.<anonymous closure> (package:analyzer/src/dart/analysis/library_analyzer.dart:139:7)
#19 _LinkedHashMapMixin.forEach (dart:collection-patch/compact_hash.dart:387:8)
#20 LibraryAnalyzer.analyzeSync (package:analyzer/src/dart/analysis/library_analyzer.dart:138:11)
#21 LibraryAnalyzer.analyze (package:analyzer/src/dart/analysis/library_analyzer.dart:107:12)
#22 AnalysisDriver._computeResolvedLibrary2.<anonymous closure> (package:analyzer/src/dart/analysis/driver.dart:1414:65)
#23 PerformanceLog.run (package:analyzer/src/dart/analysis/performance_logger.dart:32:15)
#24 AnalysisDriver._computeResolvedLibrary2 (package:analyzer/src/dart/analysis/driver.dart:1400:20)
#25 AnalysisDriver._computeResolvedLibrary.<anonymous closure> (package:analyzer/src/dart/analysis/driver.dart:1393:15)
Change-Id: I6f04a325b30d9dc61e7eb1a4bba91ed8b9bcd1d3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/176060
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-14 05:37:37 +00:00
Konstantin Shcheglov
b21913b0a3
Fix for NPE when no flow for 'if' statement.
...
FAILURE: typedef:(:<>(s{if
[NoSuchMethodError: The method 'ifStatement_thenBegin' was called on null.
Receiver: null
Tried calling: ifStatement_thenBegin(Instance of 'SimpleIdentifierImpl'), #0 Object.noSuchMethod (dart:core-patch/object_patch.dart:54:5)
#1 ResolverVisitor.visitIfStatement (package:analyzer/src/generated/resolver.dart:1556:26)
#2 IfStatementImpl.accept (package:analyzer/src/dart/ast/ast.dart:5705:49)
#3 NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:7611:20)
#4 BlockImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:1087:17)
#5 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1743:10)
#6 UnifyingAstVisitor.visitBlock (package:analyzer/dart/ast/visitor.dart:3143:31)
#7 ScopedVisitor.visitBlock.<anonymous closure> (package:analyzer/src/generated/resolver.dart:2467:13)
#8 ScopedVisitor._withDeclaredLocals (package:analyzer/src/generated/resolver.dart:3061:8)
#9 ScopedVisitor.visitBlock (package:analyzer/src/generated/resolver.dart:2466:5)
#10 BlockImpl.accept (package:analyzer/src/dart/ast/ast.dart:1083:49)
#11 BlockFunctionBodyImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:1042:13)
#12 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1743:10)
#13 UnifyingAstVisitor.visitBlockFunctionBody (package:analyzer/dart/ast/visitor.dart:3146:55)
#14 ScopedVisitor.visitBlockFunctionBody (package:analyzer/src/generated/resolver.dart:2476:13)
#15 ResolverVisitor.visitBlockFunctionBody (package:analyzer/src/generated/resolver.dart:954:13)
#16 BlockFunctionBodyImpl.accept (package:analyzer/src/dart/ast/ast.dart:1038:49)
#17 FunctionExpressionImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:5010:12)
#18 FunctionExpressionResolver.resolve (package:analyzer/src/dart/resolver/function_expression_resolver.dart:65:10)
#19 ResolverVisitor.visitFunctionExpression (package:analyzer/src/generated/resolver.dart:1457:37)
#20 FunctionExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:5004:49)
#21 DefaultFormalParameterImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:3008:20)
#22 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1743:10)
#23 UnifyingAstVisitor.visitDefaultFormalParameter (package:analyzer/dart/ast/visitor.dart:3198:65)
#24 ResolverVisitor.visitDefaultFormalParameter (package:analyzer/src/generated/resolver.dart:1239:11)
#25 DefaultFormalParameterImpl.accept (package:analyzer/src/dart/ast/ast.dart:3003:15)
#26 NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:7611:20)
#27 FormalParameterListImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:4493:17)
#28 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1743:10)
#29 UnifyingAstVisitor.visitFormalParameterList (package:analyzer/dart/ast/visitor.dart:3258:59)
#30 ScopedVisitor.visitFormalParameterList (package:analyzer/src/generated/resolver.dart:2717:11)
#31 FormalParameterListImpl.accept (package:analyzer/src/dart/ast/ast.dart:4489:49)
#32 FunctionTypeAliasImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:5166:18)
#33 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1743:10)
#34 UnifyingAstVisitor.visitFunctionTypeAlias (package:analyzer/dart/ast/visitor.dart:3285:55)
#35 ScopedVisitor.visitFunctionTypeAliasInScope (package:analyzer/src/generated/resolver.dart:2819:11)
#36 ResolverVisitor.visitFunctionTypeAliasInScope (package:analyzer/src/generated/resolver.dart:1490:11)
#37 ScopedVisitor.visitFunctionTypeAlias (package:analyzer/src/generated/resolver.dart:2812:7)
#38 ResolverVisitor.visitFunctionTypeAlias (package:analyzer/src/generated/resolver.dart:1482:13)
#39 FunctionTypeAliasImpl.accept (package:analyzer/src/dart/ast/ast.dart:5158:49)
#40 ResolverVisitor.visitCompilationUnit (package:analyzer/src/generated/resolver.dart:1088:23)
#41 CompilationUnitImpl.accept (package:analyzer/src/dart/ast/ast.dart:2134:49)
#42 LibraryAnalyzer._resolveFile (package:analyzer/src/dart/analysis/library_analyzer.dart:706:10)
R=brianwilkerson@google.com
Change-Id: I72bf7219d55d0bf53beae11f977f8fb840dd8e2e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175908
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-12-12 18:19:41 +00:00
Konstantin Shcheglov
3c2e851780
Fix for crash when function expression has empty body.
...
FAILURE: _(:<>(o;?(a(@([
[NoSuchMethodError: The getter 'contextType' was called on null.
Receiver: null
Tried calling: contextType, #0 Object.noSuchMethod (dart:core-patch/object_patch.dart:54:5)
#1 FunctionExpressionResolver.resolve (package:analyzer/src/dart/resolver/function_expression_resolver.dart:72:35)
#2 ResolverVisitor.visitFunctionExpression (package:analyzer/src/generated/resolver.dart:1424:37)
#3 FunctionExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:5004:49)
#4 ResolverVisitor.visitConditionalExpression (package:analyzer/src/generated/resolver.dart:1068:16)
#5 ConditionalExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:2265:15)
#6 DefaultFormalParameterImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:3008:20)
#7 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1710:10)
#8 UnifyingAstVisitor.visitDefaultFormalParameter (package:analyzer/dart/ast/visitor.dart:3198:65)
#9 ResolverVisitor.visitDefaultFormalParameter (package:analyzer/src/generated/resolver.dart:1206:11)
#10 DefaultFormalParameterImpl.accept (package:analyzer/src/dart/ast/ast.dart:3003:15)
#11 NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:7611:20)
#12 FormalParameterListImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:4493:17)
#13 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1710:10)
#14 UnifyingAstVisitor.visitFormalParameterList (package:analyzer/dart/ast/visitor.dart:3258:59)
#15 ScopedVisitor.visitFormalParameterList (package:analyzer/src/generated/resolver.dart:2684:11)
#16 FormalParameterListImpl.accept (package:analyzer/src/dart/ast/ast.dart:4489:49)
#17 FunctionExpressionImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:5009:18)
#18 FunctionExpressionResolver.resolve (package:analyzer/src/dart/resolver/function_expression_resolver.dart:65:10)
#19 ResolverVisitor.visitFunctionExpression (package:analyzer/src/generated/resolver.dart:1415:35)
#20 FunctionExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:5004:49)
#21 FunctionDeclarationImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:4873:26)
#22 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1710:10)
#23 UnifyingAstVisitor.visitFunctionDeclaration (package:analyzer/dart/ast/visitor.dart:3271:59)
#24 ScopedVisitor.visitFunctionDeclarationInScope (package:analyzer/src/generated/resolver.dart:2749:11)
#25 ResolverVisitor.visitFunctionDeclarationInScope (package:analyzer/src/generated/resolver.dart:1405:11)
#26 ScopedVisitor.visitFunctionDeclaration (package:analyzer/src/generated/resolver.dart:2742:7)
#27 ResolverVisitor.visitFunctionDeclaration (package:analyzer/src/generated/resolver.dart:1374:11)
#28 FunctionDeclarationImpl.accept (package:analyzer/src/dart/ast/ast.dart:4866:49)
#29 ResolverVisitor.visitCompilationUnit (package:analyzer/src/generated/resolver.dart:1055:23)
#30 CompilationUnitImpl.accept (package:analyzer/src/dart/ast/ast.dart:2134:49)
#31 LibraryAnalyzer._resolveFile (package:analyzer/src/dart/analysis/library_analyzer.dart:706:10)
Change-Id: I62cde978d075bbafacb1b429e87049ca5d54d268
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175907
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-12 17:13:15 +00:00
Konstantin Shcheglov
bb5b37eb5f
Flow analysis is not available outside of function bodies and initializers.
...
This fixes a group of crashes during fuzz testing.
FAILURE: typedef`(=<?[
[NoSuchMethodError: The method 'nullAwareAccess_rightBegin' was called on null.
Receiver: null
Tried calling: nullAwareAccess_rightBegin(Instance of 'ListLiteralImpl', Instance of 'InterfaceTypeImpl'), #0 Object.noSuchMethod (dart:core-patch/object_patch.dart:54:5)
#1 ResolverVisitor.startNullAwareIndexExpression (package:analyzer/src/generated/resolver.dart:776:26)
#2 ResolverVisitor.visitIndexExpression (package:analyzer/src/generated/resolver.dart:1585:5)
#3 IndexExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:5993:49)
#4 DefaultFormalParameterImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:3008:20)
#5 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1743:10)
#6 UnifyingAstVisitor.visitDefaultFormalParameter (package:analyzer/dart/ast/visitor.dart:3198:65)
#7 ResolverVisitor.visitDefaultFormalParameter (package:analyzer/src/generated/resolver.dart:1239:11)
#8 DefaultFormalParameterImpl.accept (package:analyzer/src/dart/ast/ast.dart:3003:15)
#9 NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:7611:20)
#10 FormalParameterListImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:4493:17)
#11 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1743:10)
#12 UnifyingAstVisitor.visitFormalParameterList (package:analyzer/dart/ast/visitor.dart:3258:59)
#13 ScopedVisitor.visitFormalParameterList (package:analyzer/src/generated/resolver.dart:2717:11)
#14 FormalParameterListImpl.accept (package:analyzer/src/dart/ast/ast.dart:4489:49)
#15 FunctionTypeAliasImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:5166:18)
#16 ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:1743:10)
#17 UnifyingAstVisitor.visitFunctionTypeAlias (package:analyzer/dart/ast/visitor.dart:3285:55)
#18 ScopedVisitor.visitFunctionTypeAliasInScope (package:analyzer/src/generated/resolver.dart:2819:11)
#19 ResolverVisitor.visitFunctionTypeAliasInScope (package:analyzer/src/generated/resolver.dart:1490:11)
#20 ScopedVisitor.visitFunctionTypeAlias (package:analyzer/src/generated/resolver.dart:2812:7)
#21 ResolverVisitor.visitFunctionTypeAlias (package:analyzer/src/generated/resolver.dart:1482:13)
#22 FunctionTypeAliasImpl.accept (package:analyzer/src/dart/ast/ast.dart:5158:49)
#23 ResolverVisitor.visitCompilationUnit (package:analyzer/src/generated/resolver.dart:1088:23)
#24 CompilationUnitImpl.accept (package:analyzer/src/dart/ast/ast.dart:2134:49)
#25 LibraryAnalyzer._resolveFile (package:analyzer/src/dart/analysis/library_analyzer.dart:706:10)
Continues //dart-review.googlesource.com/c/sdk/+/175187
Change-Id: I9518363961b4adcf7f57c2f0661151ef74efc2f5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175906
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Samuel Rawlins <srawlins@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-12 17:05:32 +00:00
Konstantin Shcheglov
dd8401ac16
Don't write initializers of static final fields.
...
This was causing one of the new crashes in summaries.
Change-Id: I50e33a83d680070d1863f27b8ee276163b84c9d9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175905
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-12 07:27:40 +00:00
Konstantin Shcheglov
1b337c5762
Fix crash in VarianceBuilder when more type arguments than type parameters.
...
R=brianwilkerson@google.com
Change-Id: Iffdae11f93a68ad5a63c0f3b08b8f087423b0d84
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175900
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-11 23:20:29 +00:00
Konstantin Shcheglov
15a533f0ac
Add tests for non-function type aliases that end with question types and classes.
...
Change-Id: Id56f2e8dec535e5c7af081bf7b94c759027cac6c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175865
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Samuel Rawlins <srawlins@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-11 21:04:39 +00:00
Sam Rawlins
17b7d05e72
Analyzer: prepare for null safety in tests: casts and late variables
...
Change-Id: I37f3663b340952b79cef0e423caf81e5950b700b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175841
Commit-Queue: Samuel Rawlins <srawlins@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-12-11 19:50:39 +00:00
Konstantin Shcheglov
0c9594a913
Fix a TODO to use resolved AST in ResynthesizeTestCases.
...
R=brianwilkerson@google.com
Change-Id: If9885c8bbcf34ff31459434c654e01b2f1876674
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175863
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-12-11 19:49:07 +00:00
Konstantin Shcheglov
ccb34a7029
Test resynthesized elements with null safety by default, print mullabilities.
...
Change-Id: If2be6f37df5a93b9392e92d99ea7d7f461798847
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175824
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-11 16:54:19 +00:00
Sam Rawlins
69cb9f7a67
Analyzer: Remove legacy parser (replaced by Fasta).
...
* Replace most of the implementation of Parser with the implementation
found in _Parser2, which uses Fasta.
* Rework Parser constructor to do exactly what the previous factory
constructor + _Parser2 constructor did.
* Remove _Parser2 and ParserAdapter.
* Remove `useFasta` argument in several places.
* Delete tests in parser_test.dart which only used the legacy parser.
* Move ParserProxy from parser_fasta_test.dart to parser_test.dart
* Remove ~240 cases of dead code like `if (useFasta)` and `useFasta ?`
in tests.
Change-Id: Iea29a10ff83103293902336490fbc9cd46cd20ce
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175560
Commit-Queue: Samuel Rawlins <srawlins@google.com >
Reviewed-by: Paul Berry <paulberry@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-12-10 23:47:48 +00:00
Konstantin Shcheglov
b63d2114aa
Switch TopLevelInferenceTest to PubPackageResolutionTest.
...
R=brianwilkerson@google.com
Change-Id: I5409e59d0b6ccf5644687840cdc9767fb8a49cf5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175584
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-12-10 22:08:48 +00:00
Sam Rawlins
1b130f47c1
Analyzer: Prepare some manually lazily initialized fields etc for null safety
...
* Add `/*late final*/ hints for fields which are manually lazily
initialized in a public getter.
* Switch List(size) constructor with [] list literal.
* Force a few non-nullable types.
* Remove `null` assignments in embedder_tests.dart which change type of
fields.
* Remove `null` Tokens in tests where null should not be.
Change-Id: I260657d222f6b8ca10e31d06991dc9e2cb575e5c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171140
Commit-Queue: Samuel Rawlins <srawlins@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-12-10 01:14:48 +00:00
Michal Terepeta
97093b2594
Watch Bazel generated files for changes
...
This introduces a way to see what paths have been searched for by
the `BazelWorkspace` and adds a polling-based watcher to detect
when files generated by Bazel appear (or have changed). This allows
us to re-analyze things automatically instead of, e.g., restarting
the server.
Change-Id: I60eae29b0e4fcc3a91d8d2275c6898e45548ea03
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/168649
Commit-Queue: Michal Terepeta <michalt@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2020-12-09 09:39:19 +00:00
Konstantin Shcheglov
2c7de33476
Report TYPE_ALIAS_CANNOT_REFERENCE_ITSELF for non-function type aliases.
...
Change-Id: I9ebcae63f4a5b708f25f9f41c5733ea701350a42
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175384
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-09 06:02:48 +00:00
Konstantin Shcheglov
a2d488123c
Implement support for accessing static member when aliased type is InterfaceType.
...
Change-Id: Ia86338b409e0ee6f812924966a0d0eebf29597c5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175421
Reviewed-by: Samuel Rawlins <srawlins@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-09 02:19:08 +00:00
Konstantin Shcheglov
2cf24e3b57
Evaluate TypeAliasElement in ConstantVisitor.
...
R=brianwilkerson@google.com
Change-Id: I53ce1ed1b838c0c2a3c977f9be930733b951547a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175383
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-12-08 21:13:35 +00:00