August 24, 2013 [phobos] [D-Programming-Language/phobos] 853685: Fix issue 10874. | ||||
---|---|---|---|---|
| ||||
Attachments:
| Branch: refs/heads/master Home: https://github.com/D-Programming-Language/phobos Commit: 8536853fc86632883d6ad18096b4980bacbb5056 https://github.com/D-Programming-Language/phobos/commit/8536853fc86632883d6ad18096b4980bacbb5056 Author: H. S. Teoh <hsteoh@quickfur.ath.cx> Date: 2013-08-22 (Thu, 22 Aug 2013) Changed paths: M std/conv.d Log Message: ----------- Fix issue 10874. Don't assume that is(A : B) means a==b is valid, or that !is(A : B) implies that a==b is invalid. Instead, test for a==b explicitly. More specifically, int and ulong are ==-comparable, even though ulong is not implicitly convertible to int. Thus, one should be able to convert ulong to an int-based enum, but is(A : B) in the signature constraint prohibits this. Testing for a==b explicitly, OTOH, makes this work. Commit: a184d6b484c3f2968c379f48c6fff42828b98375 https://github.com/D-Programming-Language/phobos/commit/a184d6b484c3f2968c379f48c6fff42828b98375 Author: monarch dodra <monarchdodra@gmail.com> Date: 2013-08-24 (Sat, 24 Aug 2013) Changed paths: M std/conv.d Log Message: ----------- Merge pull request #1505 from quickfur/issue10874 Issue 10874 - conv.to ulong to int enum conversion Compare: https://github.com/D-Programming-Language/phobos/compare/cbc684a001e5...a184d6b484c3 |
Copyright © 1999-2021 by the D Language Foundation