view tests/mini/intrinsics.d @ 361:932229a851a4 trunk

[svn r382] In CastExp, after the cast to CastExp.to force the type to be CastExp.type. This is used for c.im for instance, where the cast is to idouble but type is double.
author ChristianK
date Mon, 14 Jul 2008 19:17:25 +0200
parents 1bb99290e03a
children 44f08170f4ef
line wrap: on
line source

import llvm.intrinsic;

extern(C) int printf(char*,...);
extern(C) int scanf(char*,...);

void main()
{
    {
    float f;
    printf("Enter float: ");
    scanf("%f", &f);
    float sf = llvm_sqrt(f);
    printf("sqrt(%f) = %f\n", f, sf);
    }
    
    {
    double d;
    printf("Enter double: ");
    scanf("%lf", &d);
    double sd = llvm_sqrt(d);
    printf("sqrt(%lf) = %lf\n", d, sd);
    }
    
    {
    real d;
    printf("Enter real: ");
    scanf("%lf", &d);
    real sd = llvm_sqrt(d);
    printf("sqrt(%lf) = %lf\n", d, sd);
    }
}