$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r83775 - in trunk: boost/math/special_functions libs/math/test libs/multiprecision/test libs/multiprecision/test/math libs/multiprecision/test/math/instances
From: john_at_[hidden]
Date: 2013-04-06 04:54:09
Author: johnmaddock
Date: 2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
New Revision: 83775
URL: http://svn.boost.org/trac/boost/changeset/83775
Log:
Refactored build process to improve compile times.
Fixed expression-template incompatibility in spherical_harmonic.hpp.
Fixed expression template issues in log1p_expm1_test.hpp and test_cbrt.hpp.
Added:
   trunk/libs/multiprecision/test/math/instances/
   trunk/libs/multiprecision/test/math/instances/Jamfile.v2   (contents, props changed)
   trunk/libs/multiprecision/test/math/instances/instances.cpp   (contents, props changed)
Text files modified: 
   trunk/boost/math/special_functions/spherical_harmonic.hpp   |     2 +-                                      
   trunk/libs/math/test/log1p_expm1_test.hpp                   |     4 ++--                                    
   trunk/libs/math/test/test_cbrt.hpp                          |     2 +-                                      
   trunk/libs/multiprecision/test/Jamfile.v2                   |    37 ++++++++++++++++++++++---------------   
   trunk/libs/multiprecision/test/math/log1p_expm1_test.cpp    |     5 +++--                                   
   trunk/libs/multiprecision/test/math/powm1_sqrtp1m1_test.cpp |     3 +--                                     
   trunk/libs/multiprecision/test/math/setup.hpp               |    20 +++++++++++++++++++-                    
   trunk/libs/multiprecision/test/math/test_bessel_i.cpp       |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_bessel_j.cpp       |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_bessel_k.cpp       |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_bessel_y.cpp       |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_beta.cpp           |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_binomial_coeff.cpp |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_carlson.cpp        |     5 +----                                   
   trunk/libs/multiprecision/test/math/test_cbrt.cpp           |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_digamma.cpp        |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_ellint_1.cpp       |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_ellint_2.cpp       |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_ellint_3.cpp       |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_erf.cpp            |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_expint.cpp         |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_gamma.cpp          |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_hermite.cpp        |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_ibeta.cpp          |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_ibeta_2.cpp        |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_ibeta_3.cpp        |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_ibeta_4.cpp        |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_ibeta_inv_1.cpp    |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_ibeta_inv_ab_4.cpp |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_igamma.cpp         |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_igamma_inv.cpp     |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_igamma_inva.cpp    |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_laguerre.cpp       |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_legendre.cpp       |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_tgamma_ratio.cpp   |     2 +-                                      
   trunk/libs/multiprecision/test/math/test_zeta.cpp           |     2 +-                                      
   36 files changed, 78 insertions(+), 56 deletions(-)
Modified: trunk/boost/math/special_functions/spherical_harmonic.hpp
==============================================================================
--- trunk/boost/math/special_functions/spherical_harmonic.hpp	(original)
+++ trunk/boost/math/special_functions/spherical_harmonic.hpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -119,7 +119,7 @@
    if(m&1)
    {
       // Check phase if theta is outside [0, PI]:
-      U mod = boost::math::tools::fmod_workaround(theta, 2 * constants::pi<U>());
+      U mod = boost::math::tools::fmod_workaround(theta, T(2 * constants::pi<U>()));
       if(mod < 0)
          mod += 2 * constants::pi<U>();
       if(mod > constants::pi<U>())
Modified: trunk/libs/math/test/log1p_expm1_test.hpp
==============================================================================
--- trunk/libs/math/test/log1p_expm1_test.hpp	(original)
+++ trunk/libs/math/test/log1p_expm1_test.hpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -69,12 +69,12 @@
    static const T zero = 0;
    static const T m_one = -1;
    BOOST_CHECK_EQUAL(boost::math::log1p(zero), zero);
-   BOOST_CHECK_EQUAL(boost::math::log1p(-zero), zero);
+   BOOST_CHECK_EQUAL(boost::math::log1p(T(-zero)), zero);
    BOOST_CHECK_EQUAL(boost::math::expm1(zero), zero);
    if(std::numeric_limits<T>::has_infinity)
    {
       BOOST_CHECK_EQUAL(boost::math::log1p(m_one), -std::numeric_limits<T>::infinity());
-      BOOST_CHECK_EQUAL(boost::math::expm1(-std::numeric_limits<T>::infinity()), m_one);
+      BOOST_CHECK_EQUAL(boost::math::expm1(T(-std::numeric_limits<T>::infinity())), m_one);
       BOOST_CHECK_EQUAL(boost::math::expm1(std::numeric_limits<T>::infinity()), std::numeric_limits<T>::infinity());
 #ifndef __BORLANDC__
       // When building with Borland's compiler, simply the *presence*
Modified: trunk/libs/math/test/test_cbrt.hpp
==============================================================================
--- trunk/libs/math/test/test_cbrt.hpp	(original)
+++ trunk/libs/math/test/test_cbrt.hpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -30,7 +30,7 @@
    template <class S>
    Real operator()(const S& row)
    {
-      return boost::math::cbrt(-Real(row[1]));
+      return boost::math::cbrt(Real(-Real(row[1])));
    }
 };
 
Modified: trunk/libs/multiprecision/test/Jamfile.v2
==============================================================================
--- trunk/libs/multiprecision/test/Jamfile.v2	(original)
+++ trunk/libs/multiprecision/test/Jamfile.v2	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -21,12 +21,6 @@
    <include>$(mpfi_path)/src
    <include>$(tommath_path)
    <include>../../..
-   <search>$(gmp_path)
-   <search>$(mpfr_path)
-   <search>$(mpfr_path)/build.vc10/lib/Win32/Debug
-   <search>$(mpfi_path)
-   <search>$(mpfi_path)/src
-   <search>$(tommath_path)
    # We set these to make it easier to set up and test GMP and MPFR under Win32:
    <toolset>msvc:<runtime-link>static
    <toolset>msvc:<link>static
@@ -44,18 +38,19 @@
 local enable-specfun = [ MATCH (--enable-specfun) : [ modules.peek : ARGV ] ] ;
 local disable-concepts = [ MATCH (--disable-concepts) : [ modules.peek : ARGV ] ] ;
 
-lib gmp ;
-lib mpfr ;
-lib mpfi ;
+lib gmp : : <search>$(gmp_path) ;
+lib mpfr : : <search>$(gmp_path) <search>$(mpfr_path) <search>$(mpfr_path)/build.vc10/lib/Win32/Debug ;
+lib mpfi : : <search>$(gmp_path) <search>$(mpfr_path) <search>$(mpfr_path)/build.vc10/lib/Win32/Debug <search>$(mpfi_path) <search>$(mpfi_path)/src ;
 lib quadmath ;
 
 if $(tommath_path)
 {
-   TOMMATH = [ GLOB $(tommath_path) : *.c ] ;
+   lib tommath : [ GLOB $(tommath_path) : *.c ] ;
+   TOMMATH = tommath ;
 }
 else
 {
-   lib tommath ;
+   lib tommath : : <search>$(tommath_path) ;
    TOMMATH = tommath ;
 }
 
@@ -541,7 +536,10 @@
 
    for local source in [ glob math/*.cpp ]
    {
-      run $(source) mpfr gmp /boost/test//boost_unit_test_framework/<link>static /boost/regex//boost_regex/<link>static
+      run $(source) mpfr gmp 
+            /boost/test//boost_unit_test_framework/<link>static 
+            /boost/regex//boost_regex/<link>static 
+            math/instances//test_instances_mpfr/<link>static
            : # command line
            : # input files
            : # requirements
@@ -552,7 +550,10 @@
             <toolset>msvc:<cxxflags>-bigobj
             release
            : $(source:B)_mpfr ;
-      run $(source) gmp /boost/test//boost_unit_test_framework/<link>static /boost/regex//boost_regex/<link>static
+      run $(source) gmp 
+            /boost/test//boost_unit_test_framework/<link>static 
+            /boost/regex//boost_regex/<link>static
+            math/instances//test_instances_mpf/<link>static
            : # command line
            : # input files
            : # requirements
@@ -563,7 +564,9 @@
             <toolset>msvc:<cxxflags>-bigobj
             release
            : $(source:B)_mpf ;
-      run $(source) /boost/test//boost_unit_test_framework/<link>static /boost/regex//boost_regex/<link>static
+      run $(source) /boost/test//boost_unit_test_framework/<link>static 
+               /boost/regex//boost_regex/<link>static
+               math/instances//test_instances_cpp_dec_float/<link>static
            : # command line
            : # input files
            : # requirements
@@ -573,7 +576,10 @@
             <toolset>msvc:<cxxflags>-bigobj
             release
            : $(source:B)_cpp_dec_float ;
-      run $(source) quadmath /boost/test//boost_unit_test_framework/<link>static /boost/regex//boost_regex/<link>static
+      run $(source) quadmath 
+            /boost/test//boost_unit_test_framework/<link>static 
+            /boost/regex//boost_regex/<link>static
+            math/instances//test_instances_float128/<link>static
            : # command line
            : # input files
            : # requirements
@@ -670,3 +676,4 @@
    }
 }
 
+
Added: trunk/libs/multiprecision/test/math/instances/Jamfile.v2
==============================================================================
--- (empty file)
+++ trunk/libs/multiprecision/test/math/instances/Jamfile.v2	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -0,0 +1,77 @@
+# copyright John Maddock 2013
+# Distributed under the Boost Software License, Version 1.0.
+# (See accompanying file LICENSE_1_0.txt or copy at
+# http://www.boost.org/LICENSE_1_0.txt.
+
+import modules ;
+import path ;
+
+local ntl-path = [ modules.peek : NTL_PATH ] ;
+local gmp_path = [ modules.peek : GMP_PATH ] ;
+local mpfr_path = [ modules.peek : MPFR_PATH ] ;
+local mpfi_path = [ modules.peek : MPFI_PATH ] ;
+local tommath_path = [ modules.peek : TOMMATH_PATH ] ;
+
+project : requirements
+   <include>$(gmp_path)
+   <include>$(gmp_path)/mpfr
+   <include>$(gmp_path)/gmpfrxx
+   <include>$(mpfr_path)
+   <include>$(mpfi_path)
+   <include>$(mpfi_path)/src
+   <include>$(tommath_path)
+   <include>../../..
+   # We set these to make it easier to set up and test GMP and MPFR under Win32:
+   #<toolset>msvc:<runtime-link>static
+   #<toolset>msvc:<link>static
+   #<toolset>msvc:<warnings>all
+   #<toolset>intel-win:<runtime-link>static
+   #<toolset>intel-win:<link>static
+   # Speed up compiles:
+   #<toolset>msvc:<debug-symbols>off
+   #<toolset>intel:<debug-symbols>off
+   <toolset>gcc:<cxxflags>-Wall
+   <toolset>gcc:<cxxflags>-Wextra
+   <toolset>intel:<define>SLOW_COMPILER
+   ;
+
+lib gmp : : <search>$(gmp_path) ;
+lib mpfr : : <search>$(gmp_path) <search>$(mpfr_path) <search>$(mpfr_path)/build.vc10/lib/Win32/Debug ;
+lib mpfi : : <search>$(gmp_path) <search>$(mpfr_path) <search>$(mpfr_path)/build.vc10/lib/Win32/Debug <search>$(mpfi_path) <search>$(mpfi_path)/src ;
+lib quadmath ;
+
+rule generate_objs ( suffix : variant_count : build_opts ? )
+{
+   local result ;
+   switch $(variant_count)
+   {
+   case "1" : variant_list = 1 ;
+   case "2" : variant_list = 1 2 ;
+   case "3" : variant_list = 1 2 3 ;
+   case "4" : variant_list = 1 2 3 4 ;
+   case "5" : variant_list = 1 2 3 4 5 ;
+   case "6" : variant_list = 1 2 3 4 5 6 ;
+   }
+
+   for group_id in 1 2 3 4 5 6 7 8 9 10
+   {
+      for variant_id in $(variant_list)
+      {
+         name = "test_instances$(suffix)_$(group_id)_$(variant_id)" ;
+         obj $(name) : instances.cpp : release <define>BOOST_MATH_TEST_TYPE=test_type_$(variant_id) <define>TEST_GROUP_$(group_id) $(build_opts) ;
+         result += $(name) ;
+      }
+   }
+   return $(result) ;
+}
+
+lib test_instances_mpf : [ generate_objs "_mpf" : 4 : <define>TEST_MPF_50 ] : [ check-target-builds ../config//has_gmp : : <build>no ] ;
+lib test_instances_mpfr : [ generate_objs "_mpfr" : 3 : <define>TEST_MPFR_50 ] : [ check-target-builds ../config//has_mpfr : : <build>no ] ;
+lib test_instances_cpp_dec_float : [ generate_objs "_cpp_dec_float" : 3 : <define>TEST_CPP_DEC_FLOAT ] : ;
+lib test_instances_float128 : [ generate_objs "_float128" : 1 : <define>TEST_FLOAT128 ] : [ check-target-builds ../config//has_float128 : : <build>no ] ;
+
+explicit test_instances_mpf ;
+explicit test_instances_mpfr ;
+explicit test_instances_cpp_dec_float ;
+explicit test_instances_float128 ;
+
Added: trunk/libs/multiprecision/test/math/instances/instances.cpp
==============================================================================
--- (empty file)
+++ trunk/libs/multiprecision/test/math/instances/instances.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -0,0 +1,14 @@
+// Copyright John Maddock 2013.
+//  Use, modification and distribution are subject to the
+//  Boost Software License, Version 1.0. (See accompanying file
+//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+
+#define BOOST_MATH_OVERFLOW_ERROR_POLICY ignore_error
+#include <boost/math/special_functions.hpp>
+
+#include "../setup.hpp"
+
+//#define BOOST_MATH_TEST_TYPE double
+//#define TEST_GROUP_1
+#include "../../../../math/test/test_instances/test_instances.hpp"
+
Modified: trunk/libs/multiprecision/test/math/log1p_expm1_test.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/log1p_expm1_test.cpp	(original)
+++ trunk/libs/multiprecision/test/math/log1p_expm1_test.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -9,8 +9,9 @@
 // in ACM TOMS, {VOL 37, ISSUE 4, (February 2011)} (C) ACM, 2011. http://doi.acm.org/10.1145/1916461.1916469
 
 #include "setup.hpp"
-#include <boost/math/special_functions/log1p.hpp>
-#include <boost/math/special_functions/expm1.hpp>
+//#include <boost/math/special_functions/log1p.hpp>
+//#include <boost/math/special_functions/expm1.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 
 #include "table_type.hpp"
 
Modified: trunk/libs/multiprecision/test/math/powm1_sqrtp1m1_test.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/powm1_sqrtp1m1_test.cpp	(original)
+++ trunk/libs/multiprecision/test/math/powm1_sqrtp1m1_test.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -11,8 +11,7 @@
 #include "setup.hpp"
 
 #include <boost/test/floating_point_comparison.hpp>
-#include <boost/math/special_functions/sqrt1pm1.hpp>
-#include <boost/math/special_functions/powm1.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 
 #include "table_type.hpp"
 
Modified: trunk/libs/multiprecision/test/math/setup.hpp
==============================================================================
--- trunk/libs/multiprecision/test/math/setup.hpp	(original)
+++ trunk/libs/multiprecision/test/math/setup.hpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -41,6 +41,11 @@
    test(number<gmp_float<35> >(), "number<gmp_float<35> >");\
    /* there should be at least one test with expression templates off: */ \
    test(number<gmp_float<35>, et_off>(), "number<gmp_float<35>, et_off>");
+
+typedef boost::multiprecision::number<boost::multiprecision::gmp_float<18> > test_type_1;
+typedef boost::multiprecision::number<boost::multiprecision::gmp_float<30> > test_type_2;
+typedef boost::multiprecision::number<boost::multiprecision::gmp_float<35> > test_type_3;
+typedef boost::multiprecision::number<boost::multiprecision::gmp_float<35>, boost::multiprecision::et_off> test_type_4;
    
 #else
 
@@ -56,6 +61,10 @@
    test(number<mpfr_float_backend<30> >(), "number<mpfr_float_backend<30> >");\
    test(number<mpfr_float_backend<35> >(), "number<mpfr_float_backend<35> >");
 
+typedef boost::multiprecision::number<boost::multiprecision::mpfr_float_backend<18> > test_type_1;
+typedef boost::multiprecision::number<boost::multiprecision::mpfr_float_backend<30> > test_type_2;
+typedef boost::multiprecision::number<boost::multiprecision::mpfr_float_backend<35> > test_type_3;
+
 #else
 
 #define MPFR_TESTS
@@ -72,6 +81,10 @@
    test(number<cpp_dec_float<30> >(), "number<cpp_dec_float<30> >");\
    test(number<cpp_dec_float<35, long long, std::allocator<void> > >(), "number<cpp_dec_float<35, long long, std::allocator<void> > >");
 
+typedef boost::multiprecision::number<boost::multiprecision::cpp_dec_float<18> > test_type_1;
+typedef boost::multiprecision::number<boost::multiprecision::cpp_dec_float<30> > test_type_2;
+typedef boost::multiprecision::number<boost::multiprecision::cpp_dec_float<35, long long, std::allocator<void> > > test_type_3;
+
 #else
 
 #define CPP_DEC_FLOAT_TESTS
@@ -83,16 +96,19 @@
 
 #define FLOAT128_TESTS test(float128(), "float128");
 
+typedef boost::multiprecision::float128 test_type_1;
+
 #else
 
 #define FLOAT128_TESTS
 
 #endif
 
+
+#ifndef BOOST_MATH_TEST_TYPE
 #define BOOST_TEST_MAIN
 #include <boost/test/unit_test.hpp>
 #include <boost/test/floating_point_comparison.hpp>
-
 #endif
 
 #define ALL_TESTS \
@@ -107,3 +123,5 @@
  CPP_DEC_FLOAT_TESTS\
  FLOAT128_TESTS
 
+#endif
+
Modified: trunk/libs/multiprecision/test/math/test_bessel_i.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_bessel_i.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_bessel_i.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -12,7 +12,7 @@
 
 #define SC_(x) static_cast<typename table_type<T>::type>(BOOST_STRINGIZE(x))
 
-#include <boost/math/special_functions/bessel.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_bessel_i.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_bessel_j.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_bessel_j.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_bessel_j.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -11,7 +11,7 @@
 #include "setup.hpp"
 #include "table_type.hpp"
 
-#include <boost/math/special_functions/bessel.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_bessel_j.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_bessel_k.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_bessel_k.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_bessel_k.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -11,7 +11,7 @@
 #include "setup.hpp"
 #include "table_type.hpp"
 
-#include <boost/math/special_functions/bessel.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_bessel_k.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_bessel_y.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_bessel_y.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_bessel_y.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -11,7 +11,7 @@
 #include "setup.hpp"
 #include "table_type.hpp"
 
-#include <boost/math/special_functions/bessel.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_bessel_y.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_beta.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_beta.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_beta.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -11,7 +11,7 @@
 #include "setup.hpp"
 #include "table_type.hpp"
 
-#include <boost/math/special_functions/beta.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_beta.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_binomial_coeff.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_binomial_coeff.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_binomial_coeff.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -11,7 +11,7 @@
 #include "setup.hpp"
 #include "table_type.hpp"
 
-#include <boost/math/special_functions/binomial.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_binomial_coeff.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_carlson.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_carlson.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_carlson.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,10 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/ellint_rc.hpp>
-#include <boost/math/special_functions/ellint_rj.hpp>
-#include <boost/math/special_functions/ellint_rd.hpp>
-#include <boost/math/special_functions/ellint_rf.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_carlson.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_cbrt.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_cbrt.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_cbrt.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/cbrt.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_cbrt.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_digamma.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_digamma.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_digamma.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/digamma.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_digamma.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_ellint_1.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_ellint_1.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_ellint_1.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/ellint_1.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_ellint_1.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_ellint_2.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_ellint_2.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_ellint_2.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/ellint_2.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_ellint_2.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_ellint_3.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_ellint_3.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_ellint_3.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/ellint_3.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_ellint_3.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_erf.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_erf.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_erf.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/erf.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_erf.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_expint.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_expint.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_expint.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/expint.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_expint.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_gamma.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_gamma.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_gamma.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/gamma.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_gamma.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_hermite.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_hermite.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_hermite.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/hermite.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_hermite.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_ibeta.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_ibeta.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_ibeta.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -9,7 +9,7 @@
 
 #define TEST_DATA 1
 
-#include <boost/math/special_functions/beta.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_ibeta.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_ibeta_2.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_ibeta_2.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_ibeta_2.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -9,7 +9,7 @@
 
 #define TEST_DATA 2
 
-#include <boost/math/special_functions/beta.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_ibeta.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_ibeta_3.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_ibeta_3.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_ibeta_3.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -9,7 +9,7 @@
 
 #define TEST_DATA 3
 
-#include <boost/math/special_functions/beta.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_ibeta.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_ibeta_4.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_ibeta_4.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_ibeta_4.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -9,7 +9,7 @@
 
 #define TEST_DATA 4
 
-#include <boost/math/special_functions/beta.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_ibeta.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_ibeta_inv_1.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_ibeta_inv_1.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_ibeta_inv_1.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -9,7 +9,7 @@
 
 #define TEST_DATA 4
 
-#include <boost/math/special_functions/beta.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_ibeta_inv.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_ibeta_inv_ab_4.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_ibeta_inv_ab_4.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_ibeta_inv_ab_4.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -10,7 +10,7 @@
 #define TEST_DATA 4
 #define FULL_TEST
 
-#include <boost/math/special_functions/beta.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_ibeta_inv_ab.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_igamma.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_igamma.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_igamma.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -6,7 +6,7 @@
 #include "setup.hpp"
 #include "table_type.hpp"
 
-#include <boost/math/special_functions/gamma.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_igamma.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_igamma_inv.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_igamma_inv.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_igamma_inv.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/gamma.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_igamma_inv.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_igamma_inva.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_igamma_inva.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_igamma_inva.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/gamma.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_igamma_inva.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_laguerre.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_laguerre.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_laguerre.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/laguerre.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_laguerre.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_legendre.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_legendre.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_legendre.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/legendre.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_legendre.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_tgamma_ratio.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_tgamma_ratio.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_tgamma_ratio.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/gamma.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_tgamma_ratio.hpp"
 
 void expected_results()
Modified: trunk/libs/multiprecision/test/math/test_zeta.cpp
==============================================================================
--- trunk/libs/multiprecision/test/math/test_zeta.cpp	(original)
+++ trunk/libs/multiprecision/test/math/test_zeta.cpp	2013-04-06 04:54:04 EDT (Sat, 06 Apr 2013)
@@ -7,7 +7,7 @@
 #include "table_type.hpp"
 #define TEST_UDT
 
-#include <boost/math/special_functions/zeta.hpp>
+#include <boost/math/special_functions/math_fwd.hpp>
 #include "libs/math/test/test_zeta.hpp"
 
 void expected_results()