mirror of
https://github.com/microsoft/TypeScript.git
synced 2025-11-18 17:21:48 +00:00
Fix up for 'async'
This commit is contained in:
@@ -15970,9 +15970,14 @@ namespace ts {
|
||||
}
|
||||
|
||||
// Modifiers cannot appear in property assignments
|
||||
if (prop.modifiers && prop.modifiers.length > 0) {
|
||||
grammarErrorOnNode(prop.modifiers[0], Diagnostics.Modifiers_cannot_appear_here);
|
||||
}
|
||||
forEach(prop.modifiers, mod => {
|
||||
if (mod.kind !== SyntaxKind.AsyncKeyword) {
|
||||
grammarErrorOnNode(mod, Diagnostics._0_modifier_cannot_be_used_here, getTextOfNode(mod));
|
||||
}
|
||||
else if (prop.kind !== SyntaxKind.MethodDeclaration) {
|
||||
grammarErrorOnNode(mod, Diagnostics._0_modifier_cannot_be_used_here, getTextOfNode(mod));
|
||||
}
|
||||
});
|
||||
|
||||
// ECMA-262 11.1.5 Object Initialiser
|
||||
// If previous is not undefined then throw a SyntaxError exception if any of the following conditions are true
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
tests/cases/compiler/modifiersInObjectLiterals.ts(2,2): error TS1184: Modifiers cannot appear here.
|
||||
tests/cases/compiler/modifiersInObjectLiterals.ts(3,2): error TS1184: Modifiers cannot appear here.
|
||||
tests/cases/compiler/modifiersInObjectLiterals.ts(4,2): error TS1184: Modifiers cannot appear here.
|
||||
tests/cases/compiler/modifiersInObjectLiterals.ts(5,2): error TS1184: Modifiers cannot appear here.
|
||||
tests/cases/compiler/modifiersInObjectLiterals.ts(2,2): error TS1042: 'public' modifier cannot be used here.
|
||||
tests/cases/compiler/modifiersInObjectLiterals.ts(3,2): error TS1042: 'private' modifier cannot be used here.
|
||||
tests/cases/compiler/modifiersInObjectLiterals.ts(4,2): error TS1042: 'protected' modifier cannot be used here.
|
||||
tests/cases/compiler/modifiersInObjectLiterals.ts(5,2): error TS1042: 'abstract' modifier cannot be used here.
|
||||
|
||||
|
||||
==== tests/cases/compiler/modifiersInObjectLiterals.ts (4 errors) ====
|
||||
let data = {
|
||||
public foo: 'hey',
|
||||
~~~~~~
|
||||
!!! error TS1184: Modifiers cannot appear here.
|
||||
!!! error TS1042: 'public' modifier cannot be used here.
|
||||
private bar: 'nay',
|
||||
~~~~~~~
|
||||
!!! error TS1184: Modifiers cannot appear here.
|
||||
!!! error TS1042: 'private' modifier cannot be used here.
|
||||
protected baz: 'oh my',
|
||||
~~~~~~~~~
|
||||
!!! error TS1184: Modifiers cannot appear here.
|
||||
!!! error TS1042: 'protected' modifier cannot be used here.
|
||||
abstract noWay: 'yes'
|
||||
~~~~~~~~
|
||||
!!! error TS1184: Modifiers cannot appear here.
|
||||
!!! error TS1042: 'abstract' modifier cannot be used here.
|
||||
};
|
||||
|
||||
data.foo + data.bar + data.baz + data.noWay
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
tests/cases/compiler/objectLiteralMemberWithModifiers1.ts(1,11): error TS1042: 'public' modifier cannot be used here.
|
||||
tests/cases/compiler/objectLiteralMemberWithModifiers1.ts(1,11): error TS1184: Modifiers cannot appear here.
|
||||
|
||||
|
||||
==== tests/cases/compiler/objectLiteralMemberWithModifiers1.ts (1 errors) ====
|
||||
==== tests/cases/compiler/objectLiteralMemberWithModifiers1.ts (2 errors) ====
|
||||
var v = { public foo() { } }
|
||||
~~~~~~
|
||||
!!! error TS1042: 'public' modifier cannot be used here.
|
||||
~~~~~~
|
||||
!!! error TS1184: Modifiers cannot appear here.
|
||||
@@ -1,9 +1,12 @@
|
||||
tests/cases/compiler/objectLiteralMemberWithModifiers2.ts(1,11): error TS1042: 'public' modifier cannot be used here.
|
||||
tests/cases/compiler/objectLiteralMemberWithModifiers2.ts(1,22): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
|
||||
tests/cases/compiler/objectLiteralMemberWithModifiers2.ts(1,22): error TS2378: A 'get' accessor must return a value.
|
||||
|
||||
|
||||
==== tests/cases/compiler/objectLiteralMemberWithModifiers2.ts (2 errors) ====
|
||||
==== tests/cases/compiler/objectLiteralMemberWithModifiers2.ts (3 errors) ====
|
||||
var v = { public get foo() { } }
|
||||
~~~~~~
|
||||
!!! error TS1042: 'public' modifier cannot be used here.
|
||||
~~~
|
||||
!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher.
|
||||
~~~
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
tests/cases/conformance/parser/ecmascript5/Accessors/parserAccessors10.ts(2,3): error TS1042: 'public' modifier cannot be used here.
|
||||
tests/cases/conformance/parser/ecmascript5/Accessors/parserAccessors10.ts(2,14): error TS2378: A 'get' accessor must return a value.
|
||||
|
||||
|
||||
==== tests/cases/conformance/parser/ecmascript5/Accessors/parserAccessors10.ts (1 errors) ====
|
||||
==== tests/cases/conformance/parser/ecmascript5/Accessors/parserAccessors10.ts (2 errors) ====
|
||||
var v = {
|
||||
public get foo() { }
|
||||
~~~~~~
|
||||
!!! error TS1042: 'public' modifier cannot be used here.
|
||||
~~~
|
||||
!!! error TS2378: A 'get' accessor must return a value.
|
||||
};
|
||||
Reference in New Issue
Block a user