[Issue 22659] [REG master] Error: declaration '(S[2] arr = __error__;)' is not yet implemented in CTFE

d-bugmail at puremagic.com d-bugmail at puremagic.com
Mon Jan 10 14:07:29 UTC 2022


https://issues.dlang.org/show_bug.cgi?id=22659

Iain Buclaw <ibuclaw at gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |CTFE, diagnostic,
                   |                            |ice-on-invalid-code
                 CC|                            |ibuclaw at gdcproject.org

--- Comment #2 from Iain Buclaw <ibuclaw at gdcproject.org> ---
(In reply to Teodor Dutu from comment #1)
> This behaviour only happens if the user basically overrides
> `object._d_arrayctor` with their own hook. But function names starting with
> `_d_` are reserved for internal usage by the compiler. Isn't this problem
> overly specific to a use case that is very unlikely to happen?


1. It should not be possible to ICE the compiler with any code, no matter how
improbable it is to have it.  An `__error__` is an internal state that should
never leak out to user diagnostics.

2. This happened in all pipelines after someone raised a pull request, that's
not an unusual thing to do.

--


More information about the Digitalmars-d-bugs mailing list