diff --git a/internal/checker/checker.go b/internal/checker/checker.go index 7044bae704a..2fe58720bd7 100644 --- a/internal/checker/checker.go +++ b/internal/checker/checker.go @@ -3428,7 +3428,7 @@ func (c *Checker) checkFunctionOrConstructorSymbol(symbol *ast.Symbol) { // to a non-ambient function in an implementation file. c.error(ast.GetNameOfDeclaration(overload), diagnostics.Overload_signatures_must_all_be_ambient_or_non_ambient) case deviation&(ast.ModifierFlagsPrivate|ast.ModifierFlagsProtected) != 0: - c.error(ast.GetNameOfDeclaration(overload), diagnostics.Overload_signatures_must_all_be_public_private_or_protected) + c.error(core.OrElse(ast.GetNameOfDeclaration(overload), overload), diagnostics.Overload_signatures_must_all_be_public_private_or_protected) case deviation&ast.ModifierFlagsAbstract != 0: c.error(ast.GetNameOfDeclaration(overload), diagnostics.Overload_signatures_must_all_be_abstract_or_non_abstract) } diff --git a/testdata/baselines/reference/submodule/conformance/classConstructorOverloadsAccessibility.errors.txt b/testdata/baselines/reference/submodule/conformance/classConstructorOverloadsAccessibility.errors.txt index 15745f2677e..e939262b027 100644 --- a/testdata/baselines/reference/submodule/conformance/classConstructorOverloadsAccessibility.errors.txt +++ b/testdata/baselines/reference/submodule/conformance/classConstructorOverloadsAccessibility.errors.txt @@ -1,11 +1,16 @@ -error TS2385: Overload signatures must all be public, private or protected. +classConstructorOverloadsAccessibility.ts(2,2): error TS2385: Overload signatures must all be public, private or protected. +classConstructorOverloadsAccessibility.ts(3,2): error TS2385: Overload signatures must all be public, private or protected. +classConstructorOverloadsAccessibility.ts(11,2): error TS2385: Overload signatures must all be public, private or protected. -!!! error TS2385: Overload signatures must all be public, private or protected. -==== classConstructorOverloadsAccessibility.ts (0 errors) ==== +==== classConstructorOverloadsAccessibility.ts (3 errors) ==== class A { public constructor(a: boolean) // error + ~~~~~~~~~~~~~~~~~~ +!!! error TS2385: Overload signatures must all be public, private or protected. protected constructor(a: number) // error + ~~~~~~~~~~~~~~~~~~~~~ +!!! error TS2385: Overload signatures must all be public, private or protected. private constructor(a: string) private constructor() { @@ -14,6 +19,8 @@ error TS2385: Overload signatures must all be public, private or protected. class B { protected constructor(a: number) // error + ~~~~~~~~~~~~~~~~~~~~~ +!!! error TS2385: Overload signatures must all be public, private or protected. constructor(a: string) constructor() { diff --git a/testdata/baselines/reference/submodule/conformance/classConstructorOverloadsAccessibility.errors.txt.diff b/testdata/baselines/reference/submodule/conformance/classConstructorOverloadsAccessibility.errors.txt.diff deleted file mode 100644 index e1837b6099e..00000000000 --- a/testdata/baselines/reference/submodule/conformance/classConstructorOverloadsAccessibility.errors.txt.diff +++ /dev/null @@ -1,33 +0,0 @@ ---- old.classConstructorOverloadsAccessibility.errors.txt -+++ new.classConstructorOverloadsAccessibility.errors.txt -@@= skipped -0, +0 lines =@@ --classConstructorOverloadsAccessibility.ts(2,2): error TS2385: Overload signatures must all be public, private or protected. --classConstructorOverloadsAccessibility.ts(3,2): error TS2385: Overload signatures must all be public, private or protected. --classConstructorOverloadsAccessibility.ts(11,2): error TS2385: Overload signatures must all be public, private or protected. -- -- --==== classConstructorOverloadsAccessibility.ts (3 errors) ==== -+error TS2385: Overload signatures must all be public, private or protected. -+ -+ -+!!! error TS2385: Overload signatures must all be public, private or protected. -+==== classConstructorOverloadsAccessibility.ts (0 errors) ==== - class A { - public constructor(a: boolean) // error -- ~~~~~~~~~~~~~~~~~~ --!!! error TS2385: Overload signatures must all be public, private or protected. - protected constructor(a: number) // error -- ~~~~~~~~~~~~~~~~~~~~~ --!!! error TS2385: Overload signatures must all be public, private or protected. - private constructor(a: string) - private constructor() { - -@@= skipped -18, +13 lines =@@ - - class B { - protected constructor(a: number) // error -- ~~~~~~~~~~~~~~~~~~~~~ --!!! error TS2385: Overload signatures must all be public, private or protected. - constructor(a: string) - constructor() { - \ No newline at end of file