Mercurial > projects > ldc
comparison dmd/constfold.c @ 637:29dc68c949b0
Applied the FreeBSD patch from Ralith, closes ticket #95 , slightly changed but basically the same. Thanx Ralith :)
author | Tomas Lindquist Olsen <tomas.l.olsen@gmail.com> |
---|---|
date | Thu, 02 Oct 2008 03:25:46 +0200 |
parents | aaade6ded589 |
children | 50383e476c7e |
comparison
equal
deleted
inserted
replaced
636:9fb1f559d9e9 | 637:29dc68c949b0 |
---|---|
485 | 485 |
486 #ifdef __DMC__ | 486 #ifdef __DMC__ |
487 c = fmodl(e1->toReal(), r2) + fmodl(e1->toImaginary(), r2) * I; | 487 c = fmodl(e1->toReal(), r2) + fmodl(e1->toImaginary(), r2) * I; |
488 #elif defined(IN_GCC) | 488 #elif defined(IN_GCC) |
489 c = complex_t(e1->toReal() % r2, e1->toImaginary() % r2); | 489 c = complex_t(e1->toReal() % r2, e1->toImaginary() % r2); |
490 #elif defined(__FreeBSD__) && __FreeBSD_version < 800000 | |
491 // freebsd is kinda messed up. the STABLE branch doesn't support C99's fmodl !?! | |
492 c = complex_t(fmod(e1->toReal(), r2), fmod(e1->toImaginary(), r2)); | |
490 #else | 493 #else |
491 c = complex_t(fmodl(e1->toReal(), r2), fmodl(e1->toImaginary(), r2)); | 494 c = complex_t(fmodl(e1->toReal(), r2), fmodl(e1->toImaginary(), r2)); |
492 #endif | 495 #endif |
493 } | 496 } |
494 else if (e2->type->isimaginary()) | 497 else if (e2->type->isimaginary()) |
496 | 499 |
497 #ifdef __DMC__ | 500 #ifdef __DMC__ |
498 c = fmodl(e1->toReal(), i2) + fmodl(e1->toImaginary(), i2) * I; | 501 c = fmodl(e1->toReal(), i2) + fmodl(e1->toImaginary(), i2) * I; |
499 #elif defined(IN_GCC) | 502 #elif defined(IN_GCC) |
500 c = complex_t(e1->toReal() % i2, e1->toImaginary() % i2); | 503 c = complex_t(e1->toReal() % i2, e1->toImaginary() % i2); |
504 #elif defined(__FreeBSD__) && __FreeBSD_version < 800000 | |
505 // freebsd is kinda messed up. the STABLE branch doesn't support C99's fmodl !?! | |
506 c = complex_t(fmod(e1->toReal(), i2), fmod(e1->toImaginary(), i2)); | |
501 #else | 507 #else |
502 c = complex_t(fmodl(e1->toReal(), i2), fmodl(e1->toImaginary(), i2)); | 508 c = complex_t(fmodl(e1->toReal(), i2), fmodl(e1->toImaginary(), i2)); |
503 #endif | 509 #endif |
504 } | 510 } |
505 else | 511 else |