packages feed

altfloat 0.2 → 0.2.1

raw patch · 5 files changed

+123/−78 lines, 5 filesdep +integer-gmpdep +integer-simple

Dependencies added: integer-gmp, integer-simple

Files

Data/Floating/CMath.hs view
@@ -8,7 +8,6 @@  -- | Bindings to the standard C math library. {-# LANGUAGE ForeignFunctionInterface #-}-{-# INCLUDE <math.h> #-} module Data.Floating.CMath (     -- * Trigonometric functions     c_acos, c_asin, c_atan, c_atan2, c_cos, c_sin, c_tan,
Data/Floating/Double.hs view
@@ -7,7 +7,6 @@  -}  {-# LANGUAGE ForeignFunctionInterface, MagicHash, UnboxedTuples #-}-{-# INCLUDE <stdlib.h> <math.h> "cfloat.h" #-} module Data.Floating.Double (     Double ) where@@ -104,7 +103,7 @@     | e >= 0    = s * 2^e     | otherwise = quot s (2^(negate e))     where-        (# s, e# #) = decodeDoubleInteger x+        !(# s, e# #) = decodeDoubleInteger x         e = I# e#  instance Roundable Double where
Data/Floating/Types.hs view
@@ -76,13 +76,13 @@  instance Real a => FloatConvert a Double where     toFloating x = D# (num /## denom) where-        D# num   = toFloating . numerator   . toRational $ x-        D# denom = toFloating . denominator . toRational $ x+        !(D# num)   = toFloating . numerator   . toRational $ x+        !(D# denom) = toFloating . denominator . toRational $ x  instance Real a => FloatConvert a Float where     toFloating x = F# (divideFloat# num denom) where-        F# num   = toFloating . numerator   . toRational $ x-        F# denom = toFloating . denominator . toRational $ x+        !(F# num)   = toFloating . numerator   . toRational $ x+        !(F# denom) = toFloating . denominator . toRational $ x  instance FloatConvert a a where     toFloating = id
altfloat.cabal view
@@ -1,10 +1,11 @@ Name:               altfloat-Version:            0.2+Version:            0.2.1 License:            OtherLicense License-File:       LICENSE Cabal-Version:      >= 1.2 Author:             Nick Bowler Maintainer:         nbowler@draconx.ca+Homepage:           http://repo.or.cz/w/altfloat.git Stability:          experimental Category:           Numerical Build-Type:         Simple@@ -49,8 +50,23 @@     which includes features from this library and the non-overlapping parts of     the standard Prelude. +Flag SplitInteger+    Description: Use the new split integer packages that come with GHC 6.12.++Flag IntegerGmp+    Description: Use the integer-gmp package as opposed to integer-simple.+ Library-    Build-Depends: base >= 4 && < 5, ghc-prim, integer+    Build-Depends: base >= 4 && < 5, ghc-prim++    if flag(SplitInteger)+        if flag(IntegerGmp)+            Build-Depends: integer-gmp+        else+            Build-Depends: integer-simple+    else+        Build-Depends: integer+     C-Sources: cfloat.c     Exposed-Modules:         Data.Floating.CMath,
configure view
@@ -1,13 +1,15 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles.-# Generated by GNU Autoconf 2.64 for altfloat 0.1.+# Generated by GNU Autoconf 2.65 for altfloat 0.1. # # Report bugs to <nbowler@draconx.ca>. #+# # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,-# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software-# Foundation, Inc.+# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,+# Inc. #+# # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## -------------------- ##@@ -526,7 +528,8 @@ as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"  -exec 7<&0 </dev/null 6>&1+test -n "$DJDIR" || exec 7<&0 </dev/null+exec 6>&1  # Name of the host. # hostname on some systems (SVR3.2, Linux) returns a bogus exit status,@@ -1232,7 +1235,7 @@   LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a               nonstandard directory <lib dir>   LIBS        libraries to pass to the linker, e.g. -l<library>-  CPPFLAGS    C/C++/Objective C preprocessor flags, e.g. -I<include dir> if+  CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if               you have headers in a nonstandard directory <include dir>  Use these variables to override the choices made by `configure' or to help@@ -1302,7 +1305,7 @@ if $ac_init_version; then   cat <<\_ACEOF altfloat configure 0.1-generated by GNU Autoconf 2.64+generated by GNU Autoconf 2.65  Copyright (C) 2009 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation@@ -1349,7 +1352,7 @@ 	ac_retval=1 fi   eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}-  return $ac_retval+  as_fn_set_status $ac_retval  } # ac_fn_c_try_compile cat >config.log <<_ACEOF@@ -1357,7 +1360,7 @@ running configure, to aid debugging if configure makes a mistake.  It was created by altfloat $as_me 0.1, which was-generated by GNU Autoconf 2.64.  Invocation command line was+generated by GNU Autoconf 2.65.  Invocation command line was    $ $0 $@ @@ -1610,7 +1613,7 @@ for ac_site_file in "$ac_site_file1" "$ac_site_file2" do   test "x$ac_site_file" = xNONE && continue-  if test -r "$ac_site_file"; then+  if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then     { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 $as_echo "$as_me: loading site script $ac_site_file" >&6;}     sed 's/^/| /' "$ac_site_file" >&5@@ -1619,9 +1622,9 @@ done  if test -r "$cache_file"; then-  # Some versions of bash will fail to source /dev/null (special-  # files actually), so we avoid doing that.-  if test -f "$cache_file"; then+  # Some versions of bash will fail to source /dev/null (special files+  # actually), so we avoid doing that.  DJGPP emulates it as a regular file.+  if test /dev/null != "$cache_file" && test -f "$cache_file"; then     { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 $as_echo "$as_me: loading cache $cache_file" >&6;}     case $cache_file in@@ -2034,32 +2037,30 @@ ... rest of stderr output deleted ...          10q' conftest.err >conftest.er1     cat conftest.er1 >&5-    rm -f conftest.er1 conftest.err   fi+  rm -f conftest.er1 conftest.err   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5   test $ac_status = 0; } done  cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h.  */-#include <stdio.h>+ int main () {-FILE *f = fopen ("conftest.out", "w");- return ferror (f) || fclose (f) != 0;    ;   return 0; } _ACEOF ac_clean_files_save=$ac_clean_files-ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out conftest.out"+ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext.-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5-$as_echo_n "checking for C compiler default output file name... " >&6; }+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5+$as_echo_n "checking whether the C compiler works... " >&6; } ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`  # The possible output files:@@ -2121,10 +2122,10 @@ else   ac_file='' fi-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5-$as_echo "$ac_file" >&6; } if test -z "$ac_file"; then :-  $as_echo "$as_me: failed program was:" >&5+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5+$as_echo "no" >&6; }+$as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5@@ -2132,51 +2133,18 @@ { as_fn_set_status 77 as_fn_error "C compiler cannot create executables See \`config.log' for more details." "$LINENO" 5; }; }+else+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5+$as_echo "yes" >&6; } fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5+$as_echo_n "checking for C compiler default output file name... " >&6; }+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5+$as_echo "$ac_file" >&6; } ac_exeext=$ac_cv_exeext -# Check that the compiler produces executables we can run.  If not, either-# the compiler is broken, or we cross compile.-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5-$as_echo_n "checking whether the C compiler works... " >&6; }-# If not cross compiling, check that we can run a simple program.-if test "$cross_compiling" != yes; then-  if { ac_try='./$ac_file'-  { { case "(($ac_try" in-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;-  *) ac_try_echo=$ac_try;;-esac-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""-$as_echo "$ac_try_echo"; } >&5-  (eval "$ac_try") 2>&5-  ac_status=$?-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5-  test $ac_status = 0; }; }; then-    cross_compiling=no-  else-    if test "$cross_compiling" = maybe; then-	cross_compiling=yes-    else-	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}-as_fn_error "cannot run C compiled programs.-If you meant to cross compile, use \`--host'.-See \`config.log' for more details." "$LINENO" 5; }-    fi-  fi-fi-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5-$as_echo "yes" >&6; }--rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out conftest.out+rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save-# Check that the compiler produces executables we can run.  If not, either-# the compiler is broken, or we cross compile.-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5-$as_echo_n "checking whether we are cross compiling... " >&6; }-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5-$as_echo "$cross_compiling" >&6; }- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 $as_echo_n "checking for suffix of executables... " >&6; } if { { ac_try="$ac_link"@@ -2209,13 +2177,72 @@ as_fn_error "cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." "$LINENO" 5; } fi-rm -f conftest$ac_cv_exeext+rm -f conftest conftest$ac_cv_exeext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 $as_echo "$ac_cv_exeext" >&6; }  rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT+cat confdefs.h - <<_ACEOF >conftest.$ac_ext+/* end confdefs.h.  */+#include <stdio.h>+int+main ()+{+FILE *f = fopen ("conftest.out", "w");+ return ferror (f) || fclose (f) != 0;++  ;+  return 0;+}+_ACEOF+ac_clean_files="$ac_clean_files conftest.out"+# Check that the compiler produces executables we can run.  If not, either+# the compiler is broken, or we cross compile.+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5+$as_echo_n "checking whether we are cross compiling... " >&6; }+if test "$cross_compiling" != yes; then+  { { ac_try="$ac_link"+case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_link") 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }+  if { ac_try='./conftest$ac_cv_exeext'+  { { case "(($ac_try" in+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;+  *) ac_try_echo=$ac_try;;+esac+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""+$as_echo "$ac_try_echo"; } >&5+  (eval "$ac_try") 2>&5+  ac_status=$?+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5+  test $ac_status = 0; }; }; then+    cross_compiling=no+  else+    if test "$cross_compiling" = maybe; then+	cross_compiling=yes+    else+	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}+as_fn_error "cannot run C compiled programs.+If you meant to cross compile, use \`--host'.+See \`config.log' for more details." "$LINENO" 5; }+    fi+  fi+fi+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5+$as_echo "$cross_compiling" >&6; }++rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out+ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 $as_echo_n "checking for suffix of object files... " >&6; } if test "${ac_cv_objext+set}" = set; then :@@ -3204,7 +3231,7 @@ # values after options handling. ac_log=" This file was extended by altfloat $as_me 0.1, which was-generated by GNU Autoconf 2.64.  Invocation command line was+generated by GNU Autoconf 2.65.  Invocation command line was    CONFIG_FILES    = $CONFIG_FILES   CONFIG_HEADERS  = $CONFIG_HEADERS@@ -3239,6 +3266,7 @@    -h, --help       print this help, then exit   -V, --version    print version number and configuration settings, then exit+      --config     print configuration, then exit   -q, --quiet, --silent                    do not print progress messages   -d, --debug      don't remove temporary files@@ -3253,10 +3281,11 @@  _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1+ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ altfloat config.status 0.1-configured by $0, generated by GNU Autoconf 2.64,-  with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"+configured by $0, generated by GNU Autoconf 2.65,+  with options \\"\$ac_cs_config\\"  Copyright (C) 2009 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation@@ -3291,6 +3320,8 @@     ac_cs_recheck=: ;;   --version | --versio | --versi | --vers | --ver | --ve | --v | -V )     $as_echo "$ac_cs_version"; exit ;;+  --config | --confi | --conf | --con | --co | --c )+    $as_echo "$ac_cs_config"; exit ;;   --debug | --debu | --deb | --de | --d | -d )     debug=: ;;   --file | --fil | --fi | --f )@@ -3458,7 +3489,7 @@ t delim :nl h-s/\(.\{148\}\).*/\1/+s/\(.\{148\}\)..*/\1/ t more1 s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ p@@ -3472,7 +3503,7 @@ t nl :delim h-s/\(.\{148\}\).*/\1/+s/\(.\{148\}\)..*/\1/ t more2 s/["\\]/\\&/g; s/^/"/; s/$/"/ p