Thread overview
[Issue 3652] Allow explicit and implicit casting of dynamic array slices of known size to static array
Dec 10, 2014
Kenji Hara
May 15, 2020
Witold Baryluk
December 10, 2014
https://issues.dlang.org/show_bug.cgi?id=3652

--- Comment #7 from Kenji Hara <k.hara.pg@gmail.com> ---
See also: issue 13700

--
January 01, 2015
https://issues.dlang.org/show_bug.cgi?id=3652

--- Comment #8 from github-bugzilla@puremagic.com ---
Commits pushed to master at https://github.com/D-Programming-Language/dlang.org

https://github.com/D-Programming-Language/dlang.org/commit/243a97c3ebde92cd3c3f99963e39591fc307fff3
Issue 3652 - Allow explicit and implicit casting of dynamic array slices of
known size to static array

https://github.com/D-Programming-Language/dlang.org/commit/900cd04b373192feea7d682150eabe10e34b793f Merge pull request #725 from 9rnsr/fix3652

Issue 3652 - Allow explicit and implicit casting of dynamic array slices of known size to static array

--
May 15, 2020
https://issues.dlang.org/show_bug.cgi?id=3652

Witold Baryluk <witold.baryluk+d@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #9 from Witold Baryluk <witold.baryluk+d@gmail.com> ---
It does appear way better indeed.


https://godbolt.org/z/taxeAR

One way to emulate, the foo(xs[i .. i+4]), is by doing foo(xs[i .. i+4][0 ..
4]).

It is hard to support arbitrary expression. Not only it would be very hard to write specification to indicate what kind of expressions are supported by compiler.

in general function equality is equivalent to halting problem, so only some poorly defined subset (by algorithm) can be supported. compiler is not full symbolic algebra system, so it is probably not worth implementing or specifying.

Thanks for the patches, Kenji.

--