Given

        var x : real(32) = 0.5:real(32);
        var i : int(32) = 12345;
        var m : x * i;

        if m.type == real(64) then
        {
                writeln("64 bits was seen");
        }
        else
        {
                writeln("I expect 32 bits");
        }

produces

        64 bits was seen

Why would a 32 bit floating point number multiplied by a 32 bit integer 
yield a 64 bit quantity? Is Chapel trying to avoid overflow?

Regards - Damian

Pacific Engineering Systems International, 277-279 Broadway, Glebe NSW 2037
Ph:+61-2-8571-0847 .. Fx:+61-2-9692-9623 | unsolicited email not wanted here
Views & opinions here are mine and not those of any past or present employer

------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Chapel-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/chapel-users

Reply via email to