https://issues.dlang.org/show_bug.cgi?id=14394
Issue ID: 14394
Summary: byGrapheme does not preserve bidirectional ranges
Product: D
Version: D2
Hardware: x86_64
OS: Linux
Status: NEW
Severity: minor
Priority: P1
Component: Phobos
Assignee: [email protected]
Reporter: [email protected]
void main()
{
import std.range, std.uni;
auto range = "abcde".byGrapheme.retro();
}
Error: template std.range.retro cannot deduce function from argument types
!()(Result), candidates are:
/usr/include/dlang/dmd/std/range/package.d(182):
std.range.retro(Range)(Range r) if (isBidirectionalRange!(Unqual!Range))
Looks like byGrapheme degrades bidirectional ranges into input ranges.
--