mirror of
https://github.com/dlang/dmd.git
synced 2025-04-26 13:10:12 +03:00
Fix listing candidates when no overloads match from different modules
This commit is contained in:
parent
855521dd86
commit
913e9f537f
3 changed files with 8 additions and 3 deletions
|
@ -1621,6 +1621,8 @@ FuncDeclaration resolveFuncCall(const ref Loc loc, Scope* sc, Dsymbol s,
|
||||||
{
|
{
|
||||||
.error(loc, "none of the overloads of `%s` are callable using argument types `!(%s)%s`",
|
.error(loc, "none of the overloads of `%s` are callable using argument types `!(%s)%s`",
|
||||||
od.ident.toChars(), tiargsBuf.peekChars(), fargsBuf.peekChars());
|
od.ident.toChars(), tiargsBuf.peekChars(), fargsBuf.peekChars());
|
||||||
|
if (!global.gag || global.params.v.showGaggedErrors)
|
||||||
|
printCandidates(loc, od, sc.isDeprecated());
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1745,7 +1747,6 @@ FuncDeclaration resolveFuncCall(const ref Loc loc, Scope* sc, Dsymbol s,
|
||||||
* showDeprecated = If `false`, `deprecated` function won't be shown
|
* showDeprecated = If `false`, `deprecated` function won't be shown
|
||||||
*/
|
*/
|
||||||
private void printCandidates(Decl)(const ref Loc loc, Decl declaration, bool showDeprecated)
|
private void printCandidates(Decl)(const ref Loc loc, Decl declaration, bool showDeprecated)
|
||||||
if (is(Decl == TemplateDeclaration) || is(Decl == FuncDeclaration))
|
|
||||||
{
|
{
|
||||||
// max num of overloads to print (-v or -verror-supplements overrides this).
|
// max num of overloads to print (-v or -verror-supplements overrides this).
|
||||||
const uint DisplayLimit = global.params.v.errorSupplementCount();
|
const uint DisplayLimit = global.params.v.errorSupplementCount();
|
||||||
|
|
|
@ -2,7 +2,9 @@
|
||||||
EXTRA_FILES: imports/a18243.d
|
EXTRA_FILES: imports/a18243.d
|
||||||
TEST_OUTPUT:
|
TEST_OUTPUT:
|
||||||
---
|
---
|
||||||
fail_compilation/fail18243.d(15): Error: none of the overloads of `isNaN` are callable using argument types `!()(float)`
|
fail_compilation/fail18243.d(17): Error: none of the overloads of `isNaN` are callable using argument types `!()(float)`
|
||||||
|
/home/nick/git/dmd/compiler/test/../../../phobos/std/math/traits.d(31): Candidates are: `isNaN(X)(X x)`
|
||||||
|
fail_compilation/imports/a18243.d(5): `a18243.isNaN()`
|
||||||
---
|
---
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,9 @@
|
||||||
EXTRA_FILES: imports/range15788.d
|
EXTRA_FILES: imports/range15788.d
|
||||||
TEST_OUTPUT:
|
TEST_OUTPUT:
|
||||||
---
|
---
|
||||||
fail_compilation/ice15788.d(18): Error: none of the overloads of `iota` are callable using argument types `!()(S, S)`
|
fail_compilation/ice15788.d(20): Error: none of the overloads of `iota` are callable using argument types `!()(S, S)`
|
||||||
|
fail_compilation/imports/range15788.d(3): Candidates are: `iota(B, E, S)(B, E, S)`
|
||||||
|
fail_compilation/ice15788.d(13): `ice15788.iota()`
|
||||||
---
|
---
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue