www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 16855] New: Global void[0] causes OPTLINK Error when passed

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

          Issue ID: 16855
           Summary: Global void[0] causes OPTLINK Error when passed as ref
                    Parameter
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Windows
            Status: NEW
          Severity: normal
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: qs.il.paperinik gmail.com

The following lusting generates a OPTLINK error.

    void[0] Dummy1;
    void f(ref void[0] x) { }
    void main()
    {
        f(Dummy1);

        static void[0] Dummy2;
        f(Dummy2);
    }

It does not occur when a local void[0] is passed to f or the parameter is not
ref.
For Dummy1 it does not matter wether it is static or not.

--
Nov 29 2016