[Issue 10000] anonymous union returning wrong value when combined with CTFE

d-bugmail at puremagic.com d-bugmail at puremagic.com
Thu Nov 21 08:20:17 PST 2013


https://d.puremagic.com/issues/show_bug.cgi?id=10000


yebblies <yebblies at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |yebblies at gmail.com
         Resolution|                            |WORKSFORME


--- Comment #3 from yebblies <yebblies at gmail.com> 2013-11-22 03:20:08 EST ---
Test case:

import std.stdio;
import std.conv;

struct Test {
    union {
        string _str;
        long _int;
        ulong _uint;
    }

    this(long val) {
        this._int = val;
    }

    string toString() const {
        return to!string(_int);
    }
}

Test foo() {
    return Test(3);
}

void main(string[] argv) {
    enum x = foo();

    // Writes 0
    writeln(x);

    auto y = foo();

    // Writes 3
    writeln(y);
}

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the Digitalmars-d-bugs mailing list