Inferred Type for Explicit Cast

ketmar via Digitalmars-d digitalmars-d at puremagic.com
Thu Dec 18 15:35:22 PST 2014


On Thu, 18 Dec 2014 23:18:16 +0000
"Adam D. Ruppe via Digitalmars-d" <digitalmars-d at puremagic.com> wrote:

> On Thursday, 18 December 2014 at 23:06:12 UTC, ketmar via 
> Digitalmars-d wrote:
> > the only thing this will help is to hide bugs, i believe.
> 
> On the contrary, I find explicit casts hide bugs. Suppose you 
> write:
> 
> size_t a = cast(int) b;
> 
> It will compile and run. It'll mostly work. But the cast to int 
> probably wasn't intended (it was probably written in 32 bit code 
> and not correctly ported to 64 bit).
> 
> How often do we also write auto a = cast(T) b;? The difference 
> would be the type is written on the left side instead of the 
> right. Might make an important differnce when calling functions.
> 
> I think the auto cast is a win all around.

p.s. with functions it's even more puzzling: now i have to look at the
function signature to deduce the actual type. if such calls are rare,
there is no need for "auto casts". if such calls are frequent, write a
wrapper function or template!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20141219/bdd05b60/attachment.sig>


More information about the Digitalmars-d mailing list