What type does byGrapheme() return?
H. S. Teoh
hsteoh at quickfur.ath.cx
Mon Dec 30 23:31:31 UTC 2019
On Mon, Dec 30, 2019 at 03:09:58PM -0800, H. S. Teoh via Digitalmars-d-learn wrote:
[...]
> I suspect the cause is that whatever Grapheme.opSlice returns is going
> out-of-scope when used with .map, that's why it's malfunctioning.
[...]
Haha, it's actually right there in the Grapheme docs for the opSlice
overloads:
Random-access range over Grapheme's $(CHARACTERS).
Warning: Invalidates when this Grapheme leaves the scope,
attempts to use it then would lead to memory corruption.
Looks like when you use .map over the Grapheme, it gets copied into a
temporary, which gets invalidated when map.front returns. Somewhere
we're missing a 'scope' qualifier...
T
--
War doesn't prove who's right, just who's left. -- BSD Games' Fortune
More information about the Digitalmars-d-learn
mailing list