X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fround.c;h=b52bd35858a73a41761fa74e33190191afd80a5e;hb=fc5b3a7190a490a169f2d53a54b393a68fab9ec2;hp=df56266cd525faa3c3b1326d4b7ead5bbd09c886;hpb=995bd0764ebf4b386fca98ef660f651b25cbd8a7;p=gnulib.git diff --git a/lib/round.c b/lib/round.c index df56266cd..b52bd3585 100644 --- a/lib/round.c +++ b/lib/round.c @@ -1,5 +1,5 @@ /* Round toward nearest, breaking ties away from zero. - Copyright (C) 2007, 2010 Free Software Foundation, Inc. + Copyright (C) 2007, 2010-2012 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -12,13 +12,14 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, - Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + with this program; if not, see . */ /* Written by Ben Pfaff , 2007. Based heavily on code by Bruno Haible. */ -#include +#if ! defined USE_LONG_DOUBLE +# include +#endif /* Specification. */ #include @@ -63,6 +64,12 @@ # define MINUS_ZERO L_(-0.0) #endif +/* MSVC with option -fp:strict refuses to compile constant initializers that + contain floating-point operations. Pacify this compiler. */ +#ifdef _MSC_VER +# pragma fenv_access (off) +#endif + /* If we're being included from test-round2[f].c, it already defined names for our round implementations. Otherwise, pick the preferred implementation for this machine. */ @@ -165,4 +172,3 @@ FLOOR_FREE_ROUND (DOUBLE x) return z; } #endif /* FLOOR_FREE_ROUND */ -