Bug 4676 – Overload resolution rejects valid code when mixing variadics, non-variadics

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
Other
OS
Windows
Creation time
2010-08-18T19:55:00Z
Last change time
2010-08-27T20:57:38Z
Keywords
rejects-valid
Assigned to
nobody
Creator
dsimcha

Comments

Comment #0 by dsimcha — 2010-08-18T19:55:58Z
Possibly related to 4652. void doNothing(T...)(T args, string str) {} void doNothing(T...)(T args) {} void main() { doNothing(1, 2, 3); } test9.d(56): Error: template test9.doNothing(T...) doNothing(T...) matches more than one template declaration, test9.d(52):doNothing(T...) and test9.d(53):doNothing(T...)
Comment #1 by clugdbug — 2010-08-18T22:29:27Z
(In reply to comment #0) > Possibly related to 4652. Indeed it is. My patch for 4652 (which isn't complete, there's still cases it fails for) fixes this one as well.
Comment #2 by bugzilla — 2010-08-27T20:57:38Z