34 lines
No EOL
887 B
Text
34 lines
No EOL
887 B
Text
==== tests/cases/conformance/types/objectTypeLiteral/callSignatures/callSignaturesWithParameterInitializers2.ts (4 errors) ====
|
|
// Optional parameters allow initializers only in implementation signatures
|
|
// All the below declarations are errors
|
|
|
|
function foo(x = 2);
|
|
~~~~~
|
|
!!! A parameter initializer is only allowed in a function or constructor implementation.
|
|
function foo(x = 1) { }
|
|
|
|
foo(1);
|
|
foo();
|
|
|
|
class C {
|
|
foo(x = 2);
|
|
~~~~~
|
|
!!! A parameter initializer is only allowed in a function or constructor implementation.
|
|
foo(x = 1) { }
|
|
}
|
|
|
|
var c: C;
|
|
c.foo();
|
|
c.foo(1);
|
|
|
|
var b = {
|
|
foo(x = 1),
|
|
~
|
|
!!! '{' expected.
|
|
foo(x = 1) { },
|
|
~~~
|
|
!!! Duplicate identifier 'foo'.
|
|
}
|
|
|
|
b.foo();
|
|
b.foo(1); |