[Issue 21660] [REG 2.066.0] cannot convert unique immutable(int)** to immutable

d-bugmail at puremagic.com d-bugmail at puremagic.com
Thu Mar 17 13:31:03 UTC 2022


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

Dennis <dkorpel at live.nl> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dkorpel at live.nl

--- Comment #1 from Dennis <dkorpel at live.nl> ---
Version without templates:

```
alias T = immutable int;

T** f1(const T*** input) pure
{
    T** output;
    return output;
}

T** f2(const S2* input) pure
{
    T** output;
    return output;
}

T** f3(const S3* input) pure
{
    T** output;
    return output;
}

struct S2 { T* foo; }
struct S3 { immutable int foo; }

void main()
{
    /* Not regressions in 2.066 (i.e. 2.065 also rejected these): */
    immutable int*** a1;
    immutable int** r1 = f1(a1);

    S2* a2;
    immutable int** r2 = f2(a2);

    /* But this one compiles with 2.065, so it's a regression: */
    S3* a3;
    immutable int** r3 = f3(a3);
}
```

--


More information about the Digitalmars-d-bugs mailing list