compiling the example from the doc-comment makes the linker complain about multiple defined symbols. on windows this does not happen.
the "mixin Reflect;" creates static constructors and saves the TypeInfos for all functions of the class in a static assoc array. this includes opEqual and opCmp that both are of type FC6ObjectZi and thus have the same TypeInfo. in this case the _D20TypeInfo_FC6ObjectZi6__initZ is defined twice (or more often), which provokes the linker error.
Comment #1 by razvan.nitu1305 — 2019-08-20T13:44:25Z
The link to the source file is broken. The bug cannot be solved if we do not have a test case.