Merge pull request #23664 from a-tarasyuk/feature/strictPropertyInitialization-can-not-be-used-without-strictNullChecks

Add warn that user can not use --strictPropertyInitialization without --strictNullChecks
This commit is contained in:
Mohamed Hegazy 2018-04-30 12:10:54 -07:00 committed by GitHub
commit 2c956af927
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 28 additions and 0 deletions

View File

@ -2062,6 +2062,10 @@ namespace ts {
}
function verifyCompilerOptions() {
if (options.strictPropertyInitialization && !options.strictNullChecks) {
createDiagnosticForOptionName(Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1, "strictPropertyInitialization", "strictNullChecks");
}
if (options.isolatedModules) {
if (options.declaration) {
createDiagnosticForOptionName(Diagnostics.Option_0_cannot_be_specified_with_option_1, "declaration", "isolatedModules");

View File

@ -0,0 +1,7 @@
error TS5052: Option 'strictPropertyInitialization' cannot be specified without specifying option 'strictNullChecks'.
!!! error TS5052: Option 'strictPropertyInitialization' cannot be specified without specifying option 'strictNullChecks'.
==== tests/cases/compiler/optionsStrictPropertyInitializationStrictNullChecks.ts (0 errors) ====
var x;

View File

@ -0,0 +1,6 @@
//// [optionsStrictPropertyInitializationStrictNullChecks.ts]
var x;
//// [optionsStrictPropertyInitializationStrictNullChecks.js]
var x;

View File

@ -0,0 +1,4 @@
=== tests/cases/compiler/optionsStrictPropertyInitializationStrictNullChecks.ts ===
var x;
>x : Symbol(x, Decl(optionsStrictPropertyInitializationStrictNullChecks.ts, 0, 3))

View File

@ -0,0 +1,4 @@
=== tests/cases/compiler/optionsStrictPropertyInitializationStrictNullChecks.ts ===
var x;
>x : any

View File

@ -0,0 +1,3 @@
// @strictPropertyInitialization: true
var x;