Merge pull request #1047 from Poita/bug8367

Issue 8367 - Insufficient constraints for chain
This commit is contained in:
Andrei Alexandrescu 2013-01-08 23:07:23 -08:00
commit ca44a116d5

View file

@ -2019,7 +2019,9 @@ assert(equal(s, [1, 2, 3, 4, 5, 6, 7][]));
----
*/
auto chain(Ranges...)(Ranges rs)
if (Ranges.length > 0 && allSatisfy!(isInputRange, staticMap!(Unqual, Ranges)))
if (Ranges.length > 0 &&
allSatisfy!(isInputRange, staticMap!(Unqual, Ranges)) &&
!is(CommonType!(staticMap!(ElementType, staticMap!(Unqual, Ranges))) == void))
{
static if (Ranges.length == 1)
{