https://issues.dlang.org/show_bug.cgi?id=17346
Steven Schveighoffer <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #1 from Steven Schveighoffer <[email protected]> --- It does work with inout. Perhaps the reason it doesn't work is because it might view calling Y1(x1_lval) as Y1(cast(const)x1_lval) which seems to be an rvalue. But clearly there is no double indirection here, and if you remove the non-ref constructor, the const ref one is then chosen. --
