http://d.puremagic.com/issues/show_bug.cgi?id=9523
Summary: std.conv.to will no longer convert enums to themselves Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: regression Priority: P2 Component: Phobos AssignedTo: nob...@puremagic.com ReportedBy: jmdavisp...@gmx.com --- Comment #0 from Jonathan M Davis <jmdavisp...@gmx.com> 2013-02-16 20:51:30 PST --- This compiled with 2.061 import std.conv; enum E { a } void main() { auto month2 = to!E(E.a); } but does not compile with the current beta for 2.062. Rather, it gives the error: /home/jmdavis/dmd2/linux/bin/../../src/phobos/std/conv.d(274): Error: template std.conv.toImpl matches more than one template declaration, /home/jmdavis/dmd2/linux/bin/../../src/phobos/std/conv.d(330):toImpl(T, S)(S value) if (isImplicitlyConvertible!(S, T) && !isEnumStrToStr!(S, T) && !isNullToStr!(S, T)) and /home/jmdavis/dmd2/linux/bin/../../src/phobos/std/conv.d(1654):toImpl(T, S)(S value) if (is(T == enum) && is(S : OriginalType!(T)) && !isFloatingPoint!(OriginalType!(T)) && !isSomeString!(OriginalType!(T))) q.d(7): Error: template instance std.conv.to!(E).to!(E) error instantiating -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------