Thread overview
[Issue 15557] Common type of void* and const(int)* should be const(void)*, not const(int)*
Oct 28, 2022
RazvanN
Oct 29, 2022
ag0aep6g
Oct 29, 2022
apham
Dec 17, 2022
Iain Buclaw
October 28, 2022
https://issues.dlang.org/show_bug.cgi?id=15557

RazvanN <razvan.nitu1305@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |razvan.nitu1305@gmail.com
         Resolution|---                         |WORKSFORME

--- Comment #1 from RazvanN <razvan.nitu1305@gmail.com> ---
This has now been fixed. It seems indeed that the common type is void*, however the initial example fails at line 5: test.d(5): Error: cannot implicitly convert expression `a` of type `const(int)*` to `void*`, which is correct.

--
October 29, 2022
https://issues.dlang.org/show_bug.cgi?id=15557

ag0aep6g <ag0aep6g@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
                 CC|                            |ag0aep6g@gmail.com
         Resolution|WORKSFORME                  |---

--- Comment #2 from ag0aep6g <ag0aep6g@gmail.com> ---
(In reply to RazvanN from comment #1)
> This has now been fixed. It seems indeed that the common type is void*, however the initial example fails at line 5: test.d(5): Error: cannot implicitly convert expression `a` of type `const(int)*` to `void*`, which is correct.

This has not been fixed. The common type is `const(void)*`, not `void*`.
Reopening.

--
October 29, 2022
https://issues.dlang.org/show_bug.cgi?id=15557

apham <apz28@hotmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |apz28@hotmail.com

--- Comment #3 from apham <apz28@hotmail.com> ---
Try different order & type -> still problem

void main()
{
    const(int)* a;
    const(void)* b;
    auto c = true ? b : a;
    pragma(msg, typeof(c));
}

onlineapp.d(5): Error: cannot implicitly convert expression `b` of type
`const(void)*` to `const(int)*`
const(int)*

--
December 17, 2022
https://issues.dlang.org/show_bug.cgi?id=15557

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P1                          |P3

--
December 13
https://issues.dlang.org/show_bug.cgi?id=15557

--- Comment #4 from dlangBugzillaToGithub <robert.schadek@posteo.de> ---
THIS ISSUE HAS BEEN MOVED TO GITHUB

https://github.com/dlang/dmd/issues/19088

DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB

--