Skip to content

Commit 46f1a2c

Browse files
author
Iain Monro
committed
Revert change to abstract-method-with-body error location
1 parent e228632 commit 46f1a2c

File tree

3 files changed

+5
-5
lines changed

3 files changed

+5
-5
lines changed

src/compiler/checker.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11175,7 +11175,7 @@ namespace ts {
1117511175
// Abstract methods cannot have an implementation.
1117611176
// Extra checks are to avoid reporting multiple errors relating to the "abstractness" of the node.
1117711177
if (node.flags & NodeFlags.Abstract && node.body) {
11178-
error(node.body, Diagnostics.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract, declarationNameToString(node.name));
11178+
error(node, Diagnostics.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract, declarationNameToString(node.name));
1117911179
}
1118011180
}
1118111181

tests/baselines/reference/classAbstractMethodInNonAbstractClass.errors.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractMethodInNonAbstractClass.ts(2,5): error TS1244: Abstract methods can only appear within an abstract class.
22
tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractMethodInNonAbstractClass.ts(6,5): error TS1244: Abstract methods can only appear within an abstract class.
3-
tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractMethodInNonAbstractClass.ts(6,20): error TS1245: Method 'foo' cannot have an implementation because it is marked abstract.
3+
tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractMethodInNonAbstractClass.ts(6,14): error TS1245: Method 'foo' cannot have an implementation because it is marked abstract.
44

55

66
==== tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractMethodInNonAbstractClass.ts (3 errors) ====
@@ -14,6 +14,6 @@ tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbst
1414
abstract foo() {}
1515
~~~~~~~~
1616
!!! error TS1244: Abstract methods can only appear within an abstract class.
17-
~~
17+
~~~
1818
!!! error TS1245: Method 'foo' cannot have an implementation because it is marked abstract.
1919
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractMethodWithImplementation.ts(2,20): error TS1245: Method 'foo' cannot have an implementation because it is marked abstract.
1+
tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractMethodWithImplementation.ts(2,14): error TS1245: Method 'foo' cannot have an implementation because it is marked abstract.
22

33

44
==== tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractMethodWithImplementation.ts (1 errors) ====
55
abstract class A {
66
abstract foo() {}
7-
~~
7+
~~~
88
!!! error TS1245: Method 'foo' cannot have an implementation because it is marked abstract.
99
}

0 commit comments

Comments
 (0)