digitalmars.D.bugs - [Issue 2720] New: Function resolution failure error message is unclear
- d-bugmail puremagic.com (31/31) Mar 09 2009 http://d.puremagic.com/issues/show_bug.cgi?id=2720
- d-bugmail puremagic.com (18/18) Jun 10 2011 http://d.puremagic.com/issues/show_bug.cgi?id=2720
http://d.puremagic.com/issues/show_bug.cgi?id=2720
Summary: Function resolution failure error message is unclear
Product: D
Version: unspecified
Platform: All
OS/Version: All
Status: NEW
Severity: enhancement
Priority: P2
Component: DMD
AssignedTo: bugzilla digitalmars.com
ReportedBy: jarrett.billingsley gmail.com
void foo(int x) { }
foo(4.5);
Gives the error:
dtest.d(11): function dtest.main.foo (int) does not match parameter types
(double)
I've been using DMD for over 4 years and I still have trouble interpreting the
error message. I always think it's the other way around (I expect what is
passed to be on the left and the function's signature to be on the right). It
also goes against the convention I've seen used elsewhere where parameters are
what are defined in the function header and arguments are the values passed to
the parameters (so (double) is the list of argument types, not parameter
types).
Something like:
dtest.d(11): Incompatible argument types (double) for function dtest.main.foo
(expected (int))
Would be much more helpful.
I'll leave it to Stewie to put a keyword on here if he wants. I'm afraid I'll
pick the wrong one.
--
Mar 09 2009
http://d.puremagic.com/issues/show_bug.cgi?id=2720
yebblies <yebblies gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |yebblies gmail.com
Resolution| |FIXED
We have a better error message now!
testx.d(3): Error: function testx.foo (int x) is not callable using argument
typ
es (double)
testx.d(3): Error: cannot implicitly convert expression (4.5) of type double to
int
Fixed in D1 and D2 (1.068 & 2.053)
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Jun 10 2011








d-bugmail puremagic.com