Initial steps to get the ball rolling on this:
1. Remove all complex and imaginary unit-tests from druntime and phobos.
2. Remove/Replace the druntime compiler-library helpers.
- cdouble *_memset128(cdouble *p, cdouble value, size_t count)
- creal *_memset160(creal *p, creal value, size_t count)
3. Remove built-in RTTI support in the compiler and run-time library.
4. Add deprecations for internal complex/imaginary helpers (core.internal.convert, core.internal.array.comparison, etc...)
5. Remove all support that was deprecated in (4).
6. Turn on -transition=complex in the compiler by default, so the deprecation warning is the default, deprecate the command-line switch.
7. Add -preview=complex (https://github.com/dlang/dmd/pull/12069). Though this could be done earlier.
8. Add new run-time support code for the "new" complex types for C ABI compatibility, this would have to be conditionally compiled in, likely using mixins to avoid triggering parser errors.
9. Make -preview=complex the default, deprecate the command-line switch.
10. Remove residual scaffolding around the deprecation phase of complex/imaginary numbers.
... or ...
Jump straight to (6) and remove everything from druntime/phobos immediately.
Comment #6 by bugzilla — 2022-01-09T02:52:51Z
It's deprecated now, I don't know when that was added.
But let's move on with making it available only with -revert=complex
Comment #7 by razvan.nitu1305 — 2022-02-15T10:01:56Z
Since complex types have been deprecated, this issue has been "fixed".