[Issue 2056] Const system does not allow certain safe casts/conversions involving deep composite types

d-bugmail at puremagic.com d-bugmail at puremagic.com
Wed May 28 14:09:37 PDT 2008


http://d.puremagic.com/issues/show_bug.cgi?id=2056





------- Comment #1 from brunodomedeiros+bugz at gmail.com  2008-05-28 16:09 -------
I'm not sure if I should open a new bug or not, but since this one is still
open, I'll put it here.

The array cases seem to be fixed in DMD 2.14, but the very same problem still
exists with pointer types, for example:

void testcases()
{
        int** intPtrPtr;
        int*** intPtrPtrPtr;

        const(int)** h1 = intPtrPtr; // Error here
        const(int*)* h2 = intPtrPtr;

        const(int)*** i1 = intPtrPtrPtr; // Error here
        const(int*)** i2 = intPtrPtrPtr; // Error here
        const(int**)* i3 = intPtrPtrPtr;

}

Similar issues also exist for associative arrays.


-- 



More information about the Digitalmars-d-bugs mailing list