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

Walter Bright <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |[email protected]
         Resolution|---                         |WONTFIX

--- Comment #1 from Walter Bright <[email protected]> ---
>        Unqual!U[n] theArray = void;
>        return theArray;

But it *is* used before set! Setting it to `void` means it is not set to
anything, i.e. is unset.

It happens with -O because the optimizer uses data flow analysis to detect
these things. The front end has no ability to do it.

The other things that affect it likely come down to an interaction between the
-cov and the optimizer.

I suggest fixing the code so it doesn't use uninitialized variables.

--

Reply via email to