From dd80e87355bbc4c8bb7b2640b2d40e0c71d0fce7 Mon Sep 17 00:00:00 2001 From: Bill Ticehurst Date: Fri, 12 Feb 2016 19:19:23 -0800 Subject: [PATCH] Set experimentalDecorators warning for JavaScript (cherry picked from commit ed7abcc1e9ac32a637eafaf5befbf9d060b41c1e) --- src/compiler/checker.ts | 2 +- src/compiler/diagnosticMessages.json | 2 +- src/compiler/program.ts | 5 +++++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 0ebb676a879..2d603aa3a8c 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -12827,7 +12827,7 @@ namespace ts { } if (!compilerOptions.experimentalDecorators) { - error(node, Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Specify_experimentalDecorators_to_remove_this_warning); + error(node, Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_experimentalDecorators_to_remove_this_warning); } if (compilerOptions.emitDecoratorMetadata) { diff --git a/src/compiler/diagnosticMessages.json b/src/compiler/diagnosticMessages.json index b8dd378160f..c1c45bd4b05 100644 --- a/src/compiler/diagnosticMessages.json +++ b/src/compiler/diagnosticMessages.json @@ -679,7 +679,7 @@ "category": "Error", "code": 1218 }, - "Experimental support for decorators is a feature that is subject to change in a future release. Specify '--experimentalDecorators' to remove this warning.": { + "Experimental support for decorators is a feature that is subject to change in a future release. Set 'experimentalDecorators' to remove this warning.": { "category": "Error", "code": 1219 }, diff --git a/src/compiler/program.ts b/src/compiler/program.ts index eb7abbfce8f..91744a1e7aa 100644 --- a/src/compiler/program.ts +++ b/src/compiler/program.ts @@ -827,6 +827,11 @@ namespace ts { let typeAssertionExpression = node; diagnostics.push(createDiagnosticForNode(typeAssertionExpression.type, Diagnostics.type_assertion_expressions_can_only_be_used_in_a_ts_file)); return true; + case SyntaxKind.Decorator: + if (!options.experimentalDecorators) { + diagnostics.push(createDiagnosticForNode(node, Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_experimentalDecorators_to_remove_this_warning)) + } + return true; } return forEachChild(node, walk);