Thread overview
[Issue 17759] struct that attempts to implicitly cast away const causes segfault
Jul 16, 2019
Basile-z
Mar 21, 2020
Basile-z
August 17, 2017
https://issues.dlang.org/show_bug.cgi?id=17759

--- Comment #1 from Steven Schveighoffer <schveiguy@yahoo.com> ---
should say, attempts to legally *implicitly* cast away const.

--
March 18, 2018
https://issues.dlang.org/show_bug.cgi?id=17759

bitter.taste@gmx.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bitter.taste@gmx.com

--- Comment #2 from bitter.taste@gmx.com ---
This happens because the built-in `opEquals' that's synthesized by the compiler
contains a condition such as `(p == q)` that's recursively expanded into
`(p.foo == q) and `(p.foo.foo == q)`.
The problem lies in `resolvePropertiesX' that keeps assembling this crazy chain
where the `p' is substituted every step.

--
March 18, 2018
https://issues.dlang.org/show_bug.cgi?id=17759

--- Comment #3 from Steven Schveighoffer <schveiguy@yahoo.com> ---
Hm... so alias this resolution needs some kind of memoization to prevent infinite expansion. Interesting.

--
July 16, 2019
https://issues.dlang.org/show_bug.cgi?id=17759

Basile-z <b2.temp@gmx.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |b2.temp@gmx.com
         Resolution|---                         |WORKSFORME

--- Comment #4 from Basile-z <b2.temp@gmx.com> ---
fixed since 2.086

--
March 21, 2020
https://issues.dlang.org/show_bug.cgi?id=17759

Basile-z <b2.temp@gmx.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|b2.temp@gmx.com             |

--