Annoyance with new integer promotion deprecations
Manu
turkeyman at gmail.com
Sun Feb 18 01:09:57 UTC 2018
On 5 February 2018 at 11:22, H. S. Teoh via Digitalmars-d <
digitalmars-d at puremagic.com> wrote:
> Code:
>
> struct S {
> byte[2] x;
> }
> void main() {
> S s, t;
> s.x = [ 1, -1 ]; // OK
> t.x = [ -s.x[0], -s.x[1] ]; // NG (line 7)
> }
>
>
> Compiler says:
> /tmp/test.d(7): Deprecation: integral promotion not done for
> `-s.x[0]`, use '-transition=intpromote' switch or `-cast(int)(s.x[0])`
> /tmp/test.d(7): Deprecation: integral promotion not done for
> `-s.x[1]`, use '-transition=intpromote' switch or `-cast(int)(s.x[1])`
>
>
> Why should I need to explicitly cast to int only to reassign it back to
> byte?! This is ridiculous.
Seriously, WTF is going on here?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20180217/657859c4/attachment.html>
More information about the Digitalmars-d
mailing list