On Sunday, 18 February 2018 at 20:01:39 UTC, Jonathan M Davis wrote:
On Sunday, February 18, 2018 19:42:07 Johan Engelen via Digitalmars-d wrote:
> There are hundreds of lines I need to molest to make the > compiler shut up. I won't type another line of code on my > colour library until this noise is gone... I will not > maintain it. I am emotionally incapable of assaulting my > code with those casts.

Using the `-transition=intpromote` compile flag is no option for you?

Since that's a transition flag, it's really only a stop-gap solution. So, if his issue is that he doesn't like having the casts in his code as opposed to not wanting to deal with updating his code right now, the flag really doesn't help.

I thought Manu explicitly mentioned that he'd rather have possible code breakage than the deprecation message. I'm assuming in his case there will not be any breakage. Using `-transition=intpromote` will change to the C semantics and shuts up the deprecation messages. With time the semantics of `-transition=intpromote` will become the new default and the flag is no longer needed. So the flag is very helpful in avoiding having to adjust the code.

I'd say that if he's not going to abandon his library, he either needs to just grit his teeth and use the explicit casts, or he's going to need to refactor the code so that the casts are unnecessary.

I don't see how one would refactor `ubyte foo(ubyte a) { return -a; }` and improve things.


Reply via email to