Commit Graph

7628 Commits

Author SHA1 Message Date
Konstantin Shcheglov 3166d6bf25 Replace ResolvedUnitCache with AnalysisSessionHelper.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ie19de8feaf82e97065d1068d0c1a06bdf3654e1d
Reviewed-on: https://dart-review.googlesource.com/c/82940
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-05 20:49:44 +00:00
Brian Wilkerson 1215f239c8 Remove references to ContentCache from analysis_server
Change-Id: Ie1e107467f639e9a005c7b16055541d235ac38d8
Reviewed-on: https://dart-review.googlesource.com/c/82921
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-05 18:17:57 +00:00
Paul Berry 97a51b2af2 Revert "Import path as p, in Workspace impl libraries"
This reverts commit feba863557.

Reason for revert: for now, we want this change on the analyzer branch only.

Original change's description:
> Import path as p, in Workspace impl libraries
> 
> In package_build.dart, there are several spots (builtFile(),
> builtPackageSourcePath(), ...) where `context` is called, in cases
> where I imagine the author thought there was a class member at hand
> (as is the case with PackageBuildPackageUriResolver), but these
> locations are actually using the top-level const `context` from the
> path package.
> 
> I think it is super confusing to have class members, and local
> variables, that shadow an imported top-level const. Better to import
> with a prefix.
> 
> Additionally, I unified relative/absolute checking in these files as
> assert() calls, with helpful messages.
> 
> Change-Id: I6d409636dab41959cabf392c80f64c4ec5270f7b
> Reviewed-on: https://dart-review.googlesource.com/c/82560
> Commit-Queue: Samuel Rawlins <srawlins@google.com>
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>

TBR=scheglov@google.com,brianwilkerson@google.com,srawlins@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I03ee1a3d3f358f8a7ac6ddad5f1b3a2e5991468f
Reviewed-on: https://dart-review.googlesource.com/c/82900
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-11-05 17:59:20 +00:00
Paul Berry b1cbfab274 Merge commit '9a1a7763f150e92e39a05519be47e581584c5de9' into analyzer 2018-11-05 04:01:07 -08:00
Brian Wilkerson 30f1c7cbab Remove references to analyzer/analyzer.dart
Change-Id: I3b3affa957ed8cc8c66f2b32c45b7dcd820f9b1e
Reviewed-on: https://dart-review.googlesource.com/c/82713
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-03 00:19:22 +00:00
Mike Fairhurst d91c030c26 Analyzer: Add a new constructor to LocalElementBuilder for dangling nodes.
To resolve `FunctionExpression`s, you must build function elements. Add
a means of using LocalElementBuilder when there is no compilation unit
element, so that the angular plugin no longer needs to override and stop
function expression resolution to avoid internal crashes.

Change-Id: I7034181633b6819f87cda32f8a59bbb99fe60ed4
Reviewed-on: https://dart-review.googlesource.com/c/82762
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2018-11-02 23:25:32 +00:00
Konstantin Shcheglov 3f431de188 Implement AnalysisSessionHelper.getElementDeclaration() using AnalysisSession.
Also adds parsedUnit / resolvedUnit to ElementDeclarationResult, because
Analysis Server use case shows that we need them.

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I845e85f658bec8fdaf3378f879e3d986a0bc01eb
Reviewed-on: https://dart-review.googlesource.com/c/82712
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-11-02 22:52:49 +00:00
Konstantin Shcheglov b71948faee Consolidate MockSdk(s) into one, living in analyzer/lib/src/test_utilities.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I70946b8e6f790608ad52c8f27cd6f506673f7b0d
Reviewed-on: https://dart-review.googlesource.com/c/82710
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-02 21:52:44 +00:00
Paul Berry 86cfb7f20b Cherry-pick CHANGELOG from analyzer-0.33 branch.
These CHANGELOG changes were made on the analyzer-0.33 branch.
Cherry-picking them over to the analyzer branch ensures that future
analyzer releases based on this branch won't be missing any changelog
entries.

Change-Id: I4941df0d56bcd90da8e508d687adfa3d18dde462
Reviewed-on: https://dart-review.googlesource.com/c/82704
Commit-Queue: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-11-02 19:58:32 +00:00
Brian Wilkerson 94b428a130 Add utilities to replace lib/analyzer.dart
Change-Id: I04d96cdc9c78390319b2a42c000dee92f5f5685d
Reviewed-on: https://dart-review.googlesource.com/c/82661
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-02 19:20:30 +00:00
Konstantin Shcheglov 2784473939 Fixes and tests for quick fixes in mixins.
I hit an exception in Analysis Server, so looked at it and related places.

R=brianwilkerson@google.com

Change-Id: Ife9bac50f8ea16aa0a092de0fdbc74c0c1534b23
Reviewed-on: https://dart-review.googlesource.com/c/82700
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-02 18:56:49 +00:00
Konstantin Shcheglov 0eb0fd0c8e Avoid using resourceProvider.convertPath() where possible.
R=brianwilkerson@google.com

Change-Id: Ie0969ef41e2afaa8f7f8b25af1422ea26a509d79
Reviewed-on: https://dart-review.googlesource.com/c/82662
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-02 17:53:50 +00:00
Paul Berry 73a58c81d4 Merge commit '31d0896a8b8c7d2a8c0496c9d8d817356ef897ad' into analyzer 2018-11-02 10:44:56 -07:00
Sam Rawlins feba863557 Import path as p, in Workspace impl libraries
In package_build.dart, there are several spots (builtFile(),
builtPackageSourcePath(), ...) where `context` is called, in cases
where I imagine the author thought there was a class member at hand
(as is the case with PackageBuildPackageUriResolver), but these
locations are actually using the top-level const `context` from the
path package.

I think it is super confusing to have class members, and local
variables, that shadow an imported top-level const. Better to import
with a prefix.

Additionally, I unified relative/absolute checking in these files as
assert() calls, with helpful messages.

Change-Id: I6d409636dab41959cabf392c80f64c4ec5270f7b
Reviewed-on: https://dart-review.googlesource.com/c/82560
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-11-02 16:44:07 +00:00
Paul Berry 31d0896a8b Introduce API so that the linter can be migrated away from Element.context.
The API change requires adding a "context" parameter to
NodeLintRule.registerNodeProcessors.  If we did this naively it would
be a breaking change since the existing linter code overrides this
method with an implementation that doesn't accept such a parameter.
So to avoid making this a breaking change, we introduce a new
interface NodeLintRuleWithContext that extends NodeLintRule, and adds
the context to the registerNodeProcessors method as an optional
parameter.  The analyzer will only pass in the new parameter if the
lint rule implements the new interface; otherwise it will call the
method in the old way.  This will allow the linter to be migrated to
use the new API at its pace.

The next breaking change version of the analyzer will change both
NodeLintRule and NodeLintRuleWithContext so that the context parameter
is required, and will pass in a context unconditionally.  At a later
date, after the linter has been fully migrated to the new analyzer
version, we will be able to switch back to NodeLintRule and deprecate
NodeLintRuleWithContext.

Change-Id: I75ada0e94e26f831d6f2cb82cddfa706100eb185
Reviewed-on: https://dart-review.googlesource.com/c/82522
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-11-02 14:22:12 +00:00
Konstantin Shcheglov e3c8774543 Add AnalysisSession.analysisContext, stop using AnalysisDriver's AnalysisResult outside the driver.
Change-Id: I63138e002d9e777f51d2d843f7ef2b1f32fed3e0
Reviewed-on: https://dart-review.googlesource.com/c/82529
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-11-02 14:16:31 +00:00
Konstantin Shcheglov ef91571cb8 Add ParsedLibraryResult, getParsedLibrary, getResolvedLibrary to AnalysisSession.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ia48233b0d72dd0a0673a6ca15817881feca7d26c
Reviewed-on: https://dart-review.googlesource.com/c/82471
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-11-01 21:25:35 +00:00
Brian Wilkerson c4b50c7dda Remove another use of the old AnalysisContext
Change-Id: I6e675f2ae7b6884ce6cf4ef84fce54718913ae93
Reviewed-on: https://dart-review.googlesource.com/c/82521
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-01 21:02:35 +00:00
Brian Wilkerson 66a12140c7 Delete unused support for dealing with packages
Change-Id: I9cf325693703c04f2fbda143c7c666dc41af9e3d
Reviewed-on: https://dart-review.googlesource.com/c/82466
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-01 20:40:39 +00:00
Brian Wilkerson 2c10b5e288 Update TestTypeProvider to not require an AnalysisContext
Change-Id: I83f3429d16b544a3210c0bab8b5fae28897702fb
Reviewed-on: https://dart-review.googlesource.com/c/82470
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-01 18:22:45 +00:00
Paul Berry d47ef00253 Convert session.dart to triple-slash comment style
Change-Id: I9f80b1a79a7d24df660b6a926b347df81d397905
Reviewed-on: https://dart-review.googlesource.com/c/82467
Commit-Queue: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-11-01 17:50:10 +00:00
Brian Wilkerson 5f60b477bb Delete obsolete and unused benchmark
Change-Id: I19b0bc7e2f4d49e086e78ef4a65a212860301adf
Reviewed-on: https://dart-review.googlesource.com/c/82464
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-01 17:03:26 +00:00
Brian Wilkerson 9fda513574 Delete outdated examples
Change-Id: I78026235901568156228f5f0ab8c3bb2c2c5ecd9
Reviewed-on: https://dart-review.googlesource.com/c/82463
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-11-01 16:41:32 +00:00
Konstantin Shcheglov 5711a1d539 Move implementations of analysis results into src/results.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I7527dfb597ff54802517093b4aa526b14e7b705c
Reviewed-on: https://dart-review.googlesource.com/c/82461
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-11-01 16:11:23 +00:00
Brian Wilkerson 4c61f68f9b Add support for summary files to the public analyzer API
Change-Id: I0d11e0481403c27de191c315f9e5d0bedc96a810
Reviewed-on: https://dart-review.googlesource.com/c/82340
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-11-01 14:21:44 +00:00
Paul Berry 57e631d661 Convert results.dart to triple-slash comment style
Change-Id: I9201d17d89c4ad9d51f50a974271ae32e6637908
Reviewed-on: https://dart-review.googlesource.com/c/82462
Commit-Queue: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-11-01 14:12:41 +00:00
Brian Wilkerson dee5e8a070 Convert more classes to mixins
Change-Id: I85bee426236a510305fc38a49b2f9348af7698df
Reviewed-on: https://dart-review.googlesource.com/c/82181
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-10-31 13:49:51 +00:00
Konstantin Shcheglov 7d87a519bc Remove LibraryContext.dispose().
LibraryContext does not own any actual AnalysisContext, so there is
nothing to do in dispose().

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I2454c5093d6b4855408f3662f06ff7f710238168
Reviewed-on: https://dart-review.googlesource.com/c/82162
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-10-30 23:15:36 +00:00
Paul Berry 5089649b15 Merge commit '98a0309fbd8a53ceb4f5520c530507e135930eab' into analyzer 2018-10-30 14:58:31 -07:00
Konstantin Shcheglov 2bb3dcf5df Add getResolvedLibrary() to AnalysisDriver.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I43fdf62bd6bb4c02e4b0cf97e324e6ca17c5d86c
Reviewed-on: https://dart-review.googlesource.com/c/82140
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-10-30 19:30:12 +00:00
Brian Wilkerson 298d22f4ab remove async parse method
Change-Id: I7a2e633b43283221790fb88a12065fed3dcdabb7
Reviewed-on: https://dart-review.googlesource.com/c/82120
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-10-30 19:26:00 +00:00
Konstantin Shcheglov 1c6774ba34 Create AnalysisDriver in AbstractContextTest using the new API.
Change-Id: Ia3b8e0fa297026f8d002cf4b29f179e686876d8c
Reviewed-on: https://dart-review.googlesource.com/c/81980
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-10-30 15:57:59 +00:00
Brian Wilkerson 6a4be163eb Convert some classes to mixins
Change-Id: I619b17eec0a76bb825c7711fe63bf17223807a57
Reviewed-on: https://dart-review.googlesource.com/c/82020
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-10-30 14:19:36 +00:00
Konstantin Shcheglov 3a374373bc Protect against self-referencing classes in UnheritanceManager2.
R=brianwilkerson@google.com, paulberry@google.com

Fixes: https://github.com/dart-lang/sdk/issues/34333
Change-Id: Iffa100bd172afe879549c78a2871d8b8d36c7c8a
Reviewed-on: https://dart-review.googlesource.com/c/81661
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-10-29 21:05:24 +00:00
Brian Wilkerson 57c185c89d Remove remaining uses of Element.context from server
Change-Id: Ibc383064951e181fa8e951714904526c2ea42f5f
Reviewed-on: https://dart-review.googlesource.com/c/81749
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-10-29 14:56:24 +00:00
Konstantin Shcheglov 028ac52180 Enum values are always computed, compute even implicit null values of default parameters.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I448c0b9d4314fb7f317830087dfe4a30fd4159d0
Reviewed-on: https://dart-review.googlesource.com/c/81750
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-10-29 05:13:02 +00:00
Konstantin Shcheglov b2439a4760 Fixes for analyzer tests on Windows.
R=brianwilkerson@google.com

Change-Id: I2758da56d8014e0cdb42aec0f8664c98cf607093
Reviewed-on: https://dart-review.googlesource.com/c/81747
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-10-28 17:56:42 +00:00
Konstantin Shcheglov e223bd3628 Replace most of direct uses of MemoryResourceProvider with ResourceProviderMixin.
R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I87114418b63ef68665b9c3e487980a72db00ec6a
Reviewed-on: https://dart-review.googlesource.com/c/81744
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-10-27 17:50:10 +00:00
Konstantin Shcheglov 99cec75809 Remove the last two methods from RestrictedAnalysisContext.
I think this is the minimum, this data is available in AnalysisSession
and (the new) AnalysisContext. Modulo async typeProvider / typeSystem.

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Idf3d40461ba50ee5d4b680e2d2ad193b086bfe0b
Reviewed-on: https://dart-review.googlesource.com/c/81724
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-10-26 23:59:23 +00:00
Devon Carew d53b034a64 Fix several analysis lints.
Change-Id: If7921d5cfc3dd2af79699f9905d7f3b106254cd0
Reviewed-on: https://dart-review.googlesource.com/c/81722
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-10-26 21:41:35 +00:00
Paul Berry cc4cc12d4f Remove unused import
Change-Id: I0d3a5ef500e967251c4744435e600c6552b61c90
Reviewed-on: https://dart-review.googlesource.com/c/81721
Commit-Queue: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-10-26 20:51:52 +00:00
Brian Wilkerson 28785aa14d Define the getter Element.session
Change-Id: I467f69d48a3084c444446a785110a5db85b3ecfa
Reviewed-on: https://dart-review.googlesource.com/c/81332
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-10-26 13:47:32 +00:00
Paul Berry 1894056c71 Merge commit '4aaa9660148fabc25a259a602c49ae924c33e378' into analyzer 2018-10-26 05:58:56 -07:00
Konstantin Shcheglov 7fe1baa48b Compute values of constants without AnalysisContext.getResult().
This fixes angular_analyzer_plugin unit tests.

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: I432470e31b194ccd5d19d90cf0033b28f01536ba
Reviewed-on: https://dart-review.googlesource.com/c/81481
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-10-26 06:05:28 +00:00
Konstantin Shcheglov 20d81452e5 Remove AstProvider, use AnalysisSessionHelper.
This is a step toward making CorrectionUtils constructor accept full
ResolveResult, instead of partial (and potentially inconsistent) unit
and AnalysisContext.

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ic386d48af2d00ecaf9ef13b8480e7e78c7d52efc
Reviewed-on: https://dart-review.googlesource.com/c/81382
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2018-10-25 19:09:11 +00:00
Paul Berry 9aff930924 Move test_methodCallTypeInference_mixinType into mixin_test.dart
Addresses code review comments on https://dart-review.googlesource.com/c/sdk/+/81322.

Change-Id: I8c8bd20f024a849042ff862f755a4187765f6201
Reviewed-on: https://dart-review.googlesource.com/c/81330
Commit-Queue: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-10-24 22:17:20 +00:00
Konstantin Shcheglov c689578779 Switch AnalysisDriver to RestrictedAnalysisContext.
It has two methods that should not be there: getContents() and
parseCompilationUnit().  Removing them will require more work on
Analysis Server.  But at this CL shows that we don't do any resolution
or element access through AnalysisContext in analysis_server or analyzer_cli.

R=brianwilkerson@google.com, paulberry@google.com

Change-Id: Ib1625a0f590ebce55153dd0b29984f9b6d51792b
Reviewed-on: https://dart-review.googlesource.com/c/81329
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2018-10-24 21:31:56 +00:00
Mike Fairhurst a88b10ad5a Fix #34906 Handle bottom type via Null correctly
Bug: 34906
Change-Id: I6105de38a0ed697f53ba1158f12e0a03a809728e
Reviewed-on: https://dart-review.googlesource.com/c/81321
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Mike Fairhurst <mfairhurst@google.com>
2018-10-24 20:50:15 +00:00
Paul Berry 2e2c360371 Merge commit '0b15595913ff89d8486e6677af0254dd6feab350' into analyzer 2018-10-24 06:09:47 -07:00
Paul Berry 0009ca7b1b In _matchInterfaceSubtypeOf, account for mixins having null superclass.
Fixes #34907.

Change-Id: I1ba56bf57d6ca5a7a69f262e12df801dc2cc4a4a
Reviewed-on: https://dart-review.googlesource.com/c/81322
Auto-Submit: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-10-24 01:06:25 +00:00