[Cherry-pick] Allow ambient accessors to omit their types unde… (#36280)

* Fix noImplicitAny check on ambient private getters (#33896)

* Fix scripts.

Co-authored-by: Klaus Meinhardt <klaus.meinhardt1@gmail.com>
This commit is contained in:
Daniel Rosenwasser
2020-01-23 10:07:43 -08:00
committed by GitHub
co-authored by Klaus Meinhardt
parent 0dbaef52a9
commit e0a286a01d
7 changed files with 24 additions and 4 deletions
+1 -1
View File
@@ -8,7 +8,7 @@ const mkdirp = require("mkdirp");
const del = require("del");
const File = require("vinyl");
const ts = require("../../lib/typescript");
const { default: chalk } = require("chalk");
const chalk = require("chalk");
const { spawn } = require("child_process");
const { CancellationToken, CancelError, Deferred } = require("prex");
const { Readable, Duplex } = require("stream");
@@ -1,5 +1,5 @@
import * as Lint from "tslint";
import chalk from "chalk";
import chalk = require("chalk");
import { sep } from "path";
function groupBy<T>(array: ReadonlyArray<T> | undefined, getGroupId: (elem: T, index: number) => number | string): T[][] {
if (!array) {
+4 -2
View File
@@ -5943,8 +5943,10 @@ namespace ts {
}
}
else {
Debug.assert(!!getter, "there must existed getter as we are current checking either setter or getter in this function");
errorOrSuggestion(noImplicitAny, getter!, Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation, symbolToString(symbol));
Debug.assert(!!getter, "there must exist a getter as we are current checking either setter or getter in this function");
if (!isPrivateWithinAmbient(getter!)) {
errorOrSuggestion(noImplicitAny, getter!, Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation, symbolToString(symbol));
}
}
type = anyType;
}
@@ -5,6 +5,8 @@ declare class Something
{
private static someStaticVar;
private someVar;
private get getter();
private set setter(v);
}
//// [app.ts]
@@ -13,5 +13,12 @@ declare class Something
private someVar;
>someVar : Symbol(Something.someVar, Decl(test.d.ts, 2, 33))
private get getter();
>getter : Symbol(Something.getter, Decl(test.d.ts, 3, 20))
private set setter(v);
>setter : Symbol(Something.setter, Decl(test.d.ts, 4, 25))
>v : Symbol(v, Decl(test.d.ts, 5, 23))
}
@@ -14,5 +14,12 @@ declare class Something
private someVar;
>someVar : any
private get getter();
>getter : any
private set setter(v);
>setter : any
>v : any
}
@@ -3,6 +3,8 @@ declare class Something
{
private static someStaticVar;
private someVar;
private get getter();
private set setter(v);
}
// @noimplicitany: true