@zzzen/pyright-internal 1.2.0-dev.20230806 → 1.2.0-dev.20230813

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/dist/analyzer/backgroundAnalysisProgram.d.ts +6 -5
  2. package/dist/analyzer/backgroundAnalysisProgram.js +6 -5
  3. package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
  4. package/dist/analyzer/checker.js +2 -2
  5. package/dist/analyzer/checker.js.map +1 -1
  6. package/dist/analyzer/codeFlowEngine.js +5 -5
  7. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  8. package/dist/analyzer/constraintSolver.d.ts +1 -0
  9. package/dist/analyzer/constraintSolver.js +30 -23
  10. package/dist/analyzer/constraintSolver.js.map +1 -1
  11. package/dist/analyzer/dataClasses.js +2 -2
  12. package/dist/analyzer/dataClasses.js.map +1 -1
  13. package/dist/analyzer/decorators.js +8 -8
  14. package/dist/analyzer/decorators.js.map +1 -1
  15. package/dist/analyzer/packageTypeVerifier.js +4 -1
  16. package/dist/analyzer/packageTypeVerifier.js.map +1 -1
  17. package/dist/analyzer/patternMatching.js +3 -3
  18. package/dist/analyzer/patternMatching.js.map +1 -1
  19. package/dist/analyzer/program.d.ts +4 -1
  20. package/dist/analyzer/program.js +8 -10
  21. package/dist/analyzer/program.js.map +1 -1
  22. package/dist/analyzer/protocols.js +28 -20
  23. package/dist/analyzer/protocols.js.map +1 -1
  24. package/dist/analyzer/service.d.ts +3 -0
  25. package/dist/analyzer/service.js +37 -2
  26. package/dist/analyzer/service.js.map +1 -1
  27. package/dist/analyzer/typeEvaluator.js +87 -35
  28. package/dist/analyzer/typeEvaluator.js.map +1 -1
  29. package/dist/analyzer/typeEvaluatorTypes.d.ts +5 -1
  30. package/dist/analyzer/typeEvaluatorTypes.js +8 -0
  31. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  32. package/dist/analyzer/typeGuards.js +6 -6
  33. package/dist/analyzer/typeGuards.js.map +1 -1
  34. package/dist/analyzer/typePrinter.js +1 -1
  35. package/dist/analyzer/typePrinter.js.map +1 -1
  36. package/dist/analyzer/typeUtils.js +27 -27
  37. package/dist/analyzer/typeUtils.js.map +1 -1
  38. package/dist/analyzer/types.d.ts +3 -1
  39. package/dist/analyzer/types.js +2 -1
  40. package/dist/analyzer/types.js.map +1 -1
  41. package/dist/backgroundAnalysis.d.ts +2 -1
  42. package/dist/backgroundAnalysis.js +2 -2
  43. package/dist/backgroundAnalysis.js.map +1 -1
  44. package/dist/backgroundAnalysisBase.d.ts +3 -3
  45. package/dist/backgroundAnalysisBase.js +3 -3
  46. package/dist/backgroundAnalysisBase.js.map +1 -1
  47. package/dist/backgroundThreadBase.d.ts +7 -6
  48. package/dist/backgroundThreadBase.js +20 -6
  49. package/dist/backgroundThreadBase.js.map +1 -1
  50. package/dist/common/console.js.map +1 -1
  51. package/dist/common/extensibility.d.ts +2 -18
  52. package/dist/common/extensibility.js.map +1 -1
  53. package/dist/common/fileSystem.d.ts +1 -1
  54. package/dist/common/pathUtils.d.ts +1 -0
  55. package/dist/common/pathUtils.js +19 -5
  56. package/dist/common/pathUtils.js.map +1 -1
  57. package/dist/common/realFileSystem.d.ts +1 -1
  58. package/dist/common/realFileSystem.js +12 -8
  59. package/dist/common/realFileSystem.js.map +1 -1
  60. package/dist/common/serviceProvider.d.ts +14 -0
  61. package/dist/common/serviceProvider.js +37 -0
  62. package/dist/common/serviceProvider.js.map +1 -0
  63. package/dist/common/serviceProviderExtensions.d.ts +16 -0
  64. package/dist/common/serviceProviderExtensions.js +27 -0
  65. package/dist/common/serviceProviderExtensions.js.map +1 -0
  66. package/dist/languageServerBase.d.ts +4 -3
  67. package/dist/languageServerBase.js +4 -4
  68. package/dist/languageServerBase.js.map +1 -1
  69. package/dist/languageService/navigationUtils.js +1 -1
  70. package/dist/languageService/navigationUtils.js.map +1 -1
  71. package/dist/localization/localize.d.ts +3 -0
  72. package/dist/localization/localize.js +1 -0
  73. package/dist/localization/localize.js.map +1 -1
  74. package/dist/localization/package.nls.cs.json +1 -1
  75. package/dist/localization/package.nls.de.json +1 -1
  76. package/dist/localization/package.nls.en-us.json +1 -0
  77. package/dist/localization/package.nls.es.json +1 -1
  78. package/dist/localization/package.nls.fr.json +1 -1
  79. package/dist/localization/package.nls.it.json +1 -1
  80. package/dist/localization/package.nls.ja.json +1 -1
  81. package/dist/localization/package.nls.ko.json +1 -1
  82. package/dist/localization/package.nls.pl.json +1 -1
  83. package/dist/localization/package.nls.pt-br.json +1 -1
  84. package/dist/localization/package.nls.ru.json +1 -1
  85. package/dist/localization/package.nls.tr.json +1 -1
  86. package/dist/localization/package.nls.zh-cn.json +1 -1
  87. package/dist/localization/package.nls.zh-tw.json +1 -1
  88. package/dist/nodeMain.js +2 -1
  89. package/dist/nodeMain.js.map +1 -1
  90. package/dist/parser/parser.js +2 -2
  91. package/dist/parser/parser.js.map +1 -1
  92. package/dist/pyrightFileSystem.d.ts +3 -1
  93. package/dist/pyrightFileSystem.js.map +1 -1
  94. package/dist/readonlyAugmentedFileSystem.d.ts +1 -1
  95. package/dist/readonlyAugmentedFileSystem.js +2 -2
  96. package/dist/readonlyAugmentedFileSystem.js.map +1 -1
  97. package/dist/server.js +7 -1
  98. package/dist/server.js.map +1 -1
  99. package/dist/tests/harness/fourslash/runner.js +1 -1
  100. package/dist/tests/harness/fourslash/runner.js.map +1 -1
  101. package/dist/tests/harness/fourslash/testLanguageService.js +1 -1
  102. package/dist/tests/harness/fourslash/testLanguageService.js.map +1 -1
  103. package/dist/tests/harness/fourslash/testState.d.ts +1 -1
  104. package/dist/tests/harness/fourslash/testState.js +7 -2
  105. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  106. package/dist/tests/harness/vfs/filesystem.d.ts +2 -2
  107. package/dist/tests/harness/vfs/filesystem.js +1 -1
  108. package/dist/tests/harness/vfs/filesystem.js.map +1 -1
  109. package/dist/tests/service.test.js +65 -0
  110. package/dist/tests/service.test.js.map +1 -1
  111. package/dist/tests/testUtils.js +6 -1
  112. package/dist/tests/testUtils.js.map +1 -1
  113. package/dist/tests/typeEvaluator4.test.js +1 -1
  114. package/dist/tests/typeEvaluator5.test.js +1 -1
  115. package/dist/tests/zipfs.test.js +8 -5
  116. package/dist/tests/zipfs.test.js.map +1 -1
  117. package/package.json +1 -1
@@ -1,13 +1,14 @@
1
1
  import { CancellationToken } from 'vscode-languageserver';
2
2
  import { BackgroundAnalysisBase } from '../backgroundAnalysisBase';
3
3
  import { ConfigOptions } from '../common/configOptions';
4
- import { ConsoleInterface } from '../common/console';
5
4
  import { Diagnostic } from '../common/diagnostic';
6
5
  import { Range } from '../common/textRange';
7
6
  import { AnalysisCompleteCallback } from './analysis';
8
7
  import { CacheManager } from './cacheManager';
9
8
  import { ImportResolver } from './importResolver';
10
- import { MaxAnalysisTime, OpenFileOptions, Program, ISourceFileFactory } from './program';
9
+ import { MaxAnalysisTime, OpenFileOptions, Program } from './program';
10
+ import { ServiceProvider } from '../common/serviceProvider';
11
+ import '../common/serviceProviderExtensions';
11
12
  export declare enum InvalidatedReason {
12
13
  Reanalyzed = 0,
13
14
  SourceWatcherChanged = 1,
@@ -16,7 +17,7 @@ export declare enum InvalidatedReason {
16
17
  }
17
18
  export declare class BackgroundAnalysisProgram {
18
19
  protected readonly serviceId: string;
19
- private readonly _console;
20
+ private readonly _serviceProvider;
20
21
  private _configOptions;
21
22
  private _importResolver;
22
23
  private _backgroundAnalysis?;
@@ -26,7 +27,7 @@ export declare class BackgroundAnalysisProgram {
26
27
  private _disposed;
27
28
  private _onAnalysisCompletion;
28
29
  private _preEditAnalysis;
29
- constructor(serviceId: string, _console: ConsoleInterface, _configOptions: ConfigOptions, _importResolver: ImportResolver, _backgroundAnalysis?: BackgroundAnalysisBase | undefined, _maxAnalysisTime?: MaxAnalysisTime | undefined, _disableChecker?: boolean | undefined, cacheManager?: CacheManager, sourceFileFactory?: ISourceFileFactory);
30
+ constructor(serviceId: string, _serviceProvider: ServiceProvider, _configOptions: ConfigOptions, _importResolver: ImportResolver, _backgroundAnalysis?: BackgroundAnalysisBase | undefined, _maxAnalysisTime?: MaxAnalysisTime | undefined, _disableChecker?: boolean | undefined, cacheManager?: CacheManager);
30
31
  get configOptions(): ConfigOptions;
31
32
  get importResolver(): ImportResolver;
32
33
  get program(): Program;
@@ -59,4 +60,4 @@ export declare class BackgroundAnalysisProgram {
59
60
  private _ensurePartialStubPackages;
60
61
  private _reportDiagnosticsForRemovedFiles;
61
62
  }
62
- export declare type BackgroundAnalysisProgramFactory = (serviceId: string, console: ConsoleInterface, configOptions: ConfigOptions, importResolver: ImportResolver, backgroundAnalysis?: BackgroundAnalysisBase, maxAnalysisTime?: MaxAnalysisTime, cacheManager?: CacheManager) => BackgroundAnalysisProgram;
63
+ export declare type BackgroundAnalysisProgramFactory = (serviceId: string, serviceProvider: ServiceProvider, configOptions: ConfigOptions, importResolver: ImportResolver, backgroundAnalysis?: BackgroundAnalysisBase, maxAnalysisTime?: MaxAnalysisTime, cacheManager?: CacheManager) => BackgroundAnalysisProgram;
@@ -11,6 +11,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
11
11
  exports.BackgroundAnalysisProgram = exports.InvalidatedReason = void 0;
12
12
  const analysis_1 = require("./analysis");
13
13
  const program_1 = require("./program");
14
+ require("../common/serviceProviderExtensions");
14
15
  var InvalidatedReason;
15
16
  (function (InvalidatedReason) {
16
17
  InvalidatedReason[InvalidatedReason["Reanalyzed"] = 0] = "Reanalyzed";
@@ -19,16 +20,16 @@ var InvalidatedReason;
19
20
  InvalidatedReason[InvalidatedReason["LibraryWatcherContentOnlyChanged"] = 3] = "LibraryWatcherContentOnlyChanged";
20
21
  })(InvalidatedReason = exports.InvalidatedReason || (exports.InvalidatedReason = {}));
21
22
  class BackgroundAnalysisProgram {
22
- constructor(serviceId, _console, _configOptions, _importResolver, _backgroundAnalysis, _maxAnalysisTime, _disableChecker, cacheManager, sourceFileFactory) {
23
+ constructor(serviceId, _serviceProvider, _configOptions, _importResolver, _backgroundAnalysis, _maxAnalysisTime, _disableChecker, cacheManager) {
23
24
  this.serviceId = serviceId;
24
- this._console = _console;
25
+ this._serviceProvider = _serviceProvider;
25
26
  this._configOptions = _configOptions;
26
27
  this._importResolver = _importResolver;
27
28
  this._backgroundAnalysis = _backgroundAnalysis;
28
29
  this._maxAnalysisTime = _maxAnalysisTime;
29
30
  this._disableChecker = _disableChecker;
30
31
  this._disposed = false;
31
- this._program = new program_1.Program(this.importResolver, this.configOptions, this._console, undefined, sourceFileFactory, this._disableChecker, cacheManager, serviceId);
32
+ this._program = new program_1.Program(this.importResolver, this.configOptions, this._serviceProvider, undefined, this._disableChecker, cacheManager, serviceId);
32
33
  }
33
34
  get configOptions() {
34
35
  return this._configOptions;
@@ -122,7 +123,7 @@ class BackgroundAnalysisProgram {
122
123
  this._backgroundAnalysis.startAnalysis(this, token);
123
124
  return false;
124
125
  }
125
- return (0, analysis_1.analyzeProgram)(this._program, this._maxAnalysisTime, this._configOptions, this._onAnalysisCompletion, this._console, token);
126
+ return (0, analysis_1.analyzeProgram)(this._program, this._maxAnalysisTime, this._configOptions, this._onAnalysisCompletion, this._serviceProvider.console(), token);
126
127
  }
127
128
  analyzeFile(filePath, token) {
128
129
  return this._program.analyzeFile(filePath, token);
@@ -141,7 +142,7 @@ class BackgroundAnalysisProgram {
141
142
  return this._backgroundAnalysis.writeTypeStub(targetImportPath, targetIsSingleFile, stubPath, token);
142
143
  }
143
144
  (0, analysis_1.analyzeProgram)(this._program,
144
- /* maxTime */ undefined, this._configOptions, this._onAnalysisCompletion, this._console, token);
145
+ /* maxTime */ undefined, this._configOptions, this._onAnalysisCompletion, this._serviceProvider.console(), token);
145
146
  return this._program.writeTypeStub(targetImportPath, targetIsSingleFile, stubPath, token);
146
147
  }
147
148
  invalidateAndForceReanalysis(reason) {
@@ -1 +1 @@
1
- {"version":3,"file":"backgroundAnalysisProgram.js","sourceRoot":"","sources":["../../../src/analyzer/backgroundAnalysisProgram.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backgroundAnalysisProgram.js","sourceRoot":"","sources":["../../../src/analyzer/backgroundAnalysisProgram.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AASH,yCAAsE;AAGtE,uCAAsE;AAEtE,+CAA6C;AAE7C,IAAY,iBAKX;AALD,WAAY,iBAAiB;IACzB,qEAAU,CAAA;IACV,yFAAoB,CAAA;IACpB,2FAAqB,CAAA;IACrB,iHAAgC,CAAA;AACpC,CAAC,EALW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAK5B;AAED,MAAa,yBAAyB;IAMlC,YACuB,SAAiB,EACnB,gBAAiC,EAC1C,cAA6B,EAC7B,eAA+B,EAC/B,mBAA4C,EACnC,gBAAkC,EAClC,eAAyB,EAC1C,YAA2B;QAPR,cAAS,GAAT,SAAS,CAAQ;QACnB,qBAAgB,GAAhB,gBAAgB,CAAiB;QAC1C,mBAAc,GAAd,cAAc,CAAe;QAC7B,oBAAe,GAAf,eAAe,CAAgB;QAC/B,wBAAmB,GAAnB,mBAAmB,CAAyB;QACnC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,oBAAe,GAAf,eAAe,CAAU;QAXtC,cAAS,GAAG,KAAK,CAAC;QActB,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAO,CACvB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,gBAAgB,EACrB,SAAS,EACT,IAAI,CAAC,eAAe,EACpB,YAAY,EACZ,SAAS,CACZ,CAAC;IACN,CAAC;IAED,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,IAAI,cAAc;QACd,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;IACrC,CAAC;IAED,IAAI,kBAAkB;QAClB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACpC,CAAC;IAED,aAAa,CAAC,QAAgB;QAC1B,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,gBAAgB,CAAC,aAA4B;;QACzC,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;QACpC,MAAA,IAAI,CAAC,mBAAmB,0CAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAClD,CAAC;IAED,iBAAiB,CAAC,cAA8B;;QAC5C,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,MAAA,IAAI,CAAC,mBAAmB,0CAAE,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAE5D,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAChD,IAAI,CAAC,aAAa,CAAC,wBAAwB,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC;IACrG,CAAC;IAED,eAAe,CAAC,SAAmB;;QAC/B,MAAA,IAAI,CAAC,mBAAmB,0CAAE,eAAe,CAAC,SAAS,CAAC,CAAC;QACrD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAC7D,IAAI,CAAC,iCAAiC,CAAC,WAAW,CAAC,CAAC;IACxD,CAAC;IAED,2BAA2B,CAAC,WAAqB;;QAC7C,MAAA,IAAI,CAAC,mBAAmB,0CAAE,2BAA2B,CAAC,WAAW,CAAC,CAAC;QACnE,IAAI,CAAC,QAAQ,CAAC,2BAA2B,CAAC,WAAW,CAAC,CAAC;IAC3D,CAAC;IAED,aAAa,CAAC,QAAgB,EAAE,OAAsB,EAAE,QAAgB,EAAE,OAAwB;;QAC9F,MAAA,IAAI,CAAC,mBAAmB,0CAAE,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9E,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;IAED,kBAAkB,CAAC,QAAgB;QAC/B,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC;IAED,qBAAqB,CAAC,QAAgB,EAAE,eAAmC;;QACvE,MAAA,IAAI,CAAC,mBAAmB,0CAAE,qBAAqB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC3E,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IACnE,CAAC;IAED,sBAAsB,CAAC,IAAY,EAAE,OAAsB,EAAE,QAAgB,EAAE,OAAwB;;QACnG,MAAA,IAAI,CAAC,mBAAmB,0CAAE,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC1E,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9D,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,EAAE,2BAA2B,CAAC,IAAI,CAAC,CAAC;IAClE,CAAC;IAED,aAAa,CAAC,QAAgB,EAAE,SAAmB;;QAC/C,MAAA,IAAI,CAAC,mBAAmB,0CAAE,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC7D,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACrE,IAAI,CAAC,iCAAiC,CAAC,WAAW,CAAC,CAAC;IACxD,CAAC;IAED,cAAc,CAAC,QAAgB;;QAC3B,MAAA,IAAI,CAAC,mBAAmB,0CAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,iBAAiB,CAAC,qBAA8B;;QAC5C,MAAA,IAAI,CAAC,mBAAmB,0CAAE,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;QACnE,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;IAC3D,CAAC;IAED,cAAc,CAAC,SAAmB,EAAE,qBAA8B;;QAC9D,MAAA,IAAI,CAAC,mBAAmB,0CAAE,cAAc,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;QAC3E,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IACnE,CAAC;IAED,qBAAqB,CAAC,QAAmC;;QACrD,IAAI,CAAC,qBAAqB,GAAG,QAAQ,CAAC;QACtC,MAAA,IAAI,CAAC,mBAAmB,0CAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAED,aAAa,CAAC,KAAwB;QAClC,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAC1B,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACpD,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,IAAA,yBAAc,EACjB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,EAC/B,KAAK,CACR,CAAC;IACN,CAAC;IAED,WAAW,CAAC,QAAgB,EAAE,KAAwB;QAClD,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,cAAc;QACV,QAAQ;IACZ,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,QAAgB,EAAE,KAAY,EAAE,KAAwB;QACjF,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAC1B,OAAO,IAAI,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;SAClF;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,aAAa,CACf,gBAAwB,EACxB,kBAA2B,EAC3B,QAAgB,EAChB,KAAwB;QAExB,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAC1B,OAAO,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;SACxG;QAED,IAAA,yBAAc,EACV,IAAI,CAAC,QAAQ;QACb,aAAa,CAAC,SAAS,EACvB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,EAC/B,KAAK,CACR,CAAC;QACF,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC9F,CAAC;IAED,4BAA4B,CAAC,MAAyB;;QAClD,MAAA,IAAI,CAAC,mBAAmB,0CAAE,4BAA4B,CAAC,MAAM,CAAC,CAAC;QAE/D,qDAAqD;QACrD,kBAAkB;QAClB,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,CAAC;QAEvC,gDAAgD;QAChD,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC;IAED,OAAO;;QACH,MAAA,IAAI,CAAC,mBAAmB,0CAAE,OAAO,EAAE,CAAC;IACxC,CAAC;IAED,OAAO;;QACH,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,OAAO;SACV;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACxB,MAAA,IAAI,CAAC,mBAAmB,0CAAE,QAAQ,EAAE,CAAC;IACzC,CAAC;IAED,aAAa;QACT,wCAAwC;QACxC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACjD,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;QAErC,uCAAuC;QACvC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;IAClC,CAAC;IAED,YAAY;QACR,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;QAClC,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IACxC,CAAC;IAEO,0BAA0B,CAAC,OAA6B;;QAC5D,MAAA,IAAI,CAAC,mBAAmB,0CAAE,yBAAyB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAClE,OAAO,IAAI,CAAC,eAAe,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACnE,CAAC;IAEO,iCAAiC,CAAC,SAA4B;QAClE,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;YACxB,OAAO;SACV;QAED,+DAA+D;QAC/D,8DAA8D;QAC9D,qDAAqD;QACrD,IAAI,CAAC,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,qBAAqB,EAAE;YACzD,IAAI,CAAC,qBAAqB,CAAC;gBACvB,WAAW,EAAE,SAAS;gBACtB,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;gBAC5C,sBAAsB,EAAE,IAAI,CAAC,QAAQ,CAAC,sBAAsB,EAAE;gBAC9D,qBAAqB,EAAE,IAAI,CAAC,QAAQ,CAAC,uBAAuB,EAAE;gBAC9D,kBAAkB,EAAE,KAAK;gBACzB,wBAAwB,EAAE,KAAK;gBAC/B,WAAW,EAAE,CAAC;aACjB,CAAC,CAAC;SACN;IACL,CAAC;CACJ;AAhPD,8DAgPC"}
@@ -1824,7 +1824,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
1824
1824
  else if ((0, types_1.isClassInstance)(exceptionType)) {
1825
1825
  const iterableType = (_b = (_a = this._evaluator.getTypeOfIterator({ type: exceptionType }, /* isAsync */ false, errorNode)) === null || _a === void 0 ? void 0 : _a.type) !== null && _b !== void 0 ? _b : types_1.UnknownType.create();
1826
1826
  resultingExceptionType = (0, typeUtils_1.mapSubtypes)(iterableType, (subtype) => {
1827
- if ((0, types_1.isAnyOrUnknown)(subtype)) {
1827
+ if ((0, types_1.isAnyOrUnknown)(subtype) || (0, types_1.isNever)(subtype)) {
1828
1828
  return subtype;
1829
1829
  }
1830
1830
  if ((0, types_1.isInstantiableClass)(subtype)) {
@@ -4441,7 +4441,7 @@ class Checker extends parseTreeWalker_1.ParseTreeWalker {
4441
4441
  }
4442
4442
  });
4443
4443
  // Were all of the exception types overridden?
4444
- if (typesOfThisExcept.length === overriddenExceptionCount) {
4444
+ if (typesOfThisExcept.length > 0 && typesOfThisExcept.length === overriddenExceptionCount) {
4445
4445
  this._evaluator.addDiagnostic(this._fileInfo.diagnosticRuleSet.reportGeneralTypeIssues, diagnosticRules_1.DiagnosticRule.reportGeneralTypeIssues, localize_1.Localizer.Diagnostic.unreachableExcept() + diagAddendum.getString(), except.typeExpression);
4446
4446
  this._evaluator.addUnreachableCode(except, except.exceptSuite);
4447
4447
  }