--- Comment #1 from 2011-11-12 11:50:15 PST ---

Obviously x and z should not have a common type at all.
So the third static assertion should not pass. (it currently fails for the
wrong reason though).

Replace the test with this:

shared    int* x;
immutable int* y;
const     int* z;

static assert(is(typeof(1?x:y)  == shared(const(int))*));  // fail
static assert(!is(typeof(1?x:y) == const(int)*));          // fail
static assert(!is(typeof(1?x:z)));                         // fail

shared    int[] a;
immutable int[] b;
const     int[] c;

static assert(is(typeof(1?a:b)  == shared(const(int))[])); // pass (ok)
static assert(!is(typeof(1?a:b) == const(int)[]));         // pass (ok)
static assert(!is(typeof(1?x:z)));                         // fail

All of these should pass.

Configure issuemail:
------- You are receiving this mail because: -------

Reply via email to