Boost regression notification (2005-09-03 [HEAD])

Boost regression test failures ------------------------------ Report time: 2005-09-03T05:00:17Z This report lists all regression test failures on release platforms. WARNING: The following libraries have failing regression tests but do not have a maintainer on file. Once a maintainer is found, add an entry to libs/maintainers.txt to eliminate this message. typeof Detailed report: http://engineering.meta-comm.com/boost-regression/CVS-HEAD/developer/issues.... 85 failures in 11 libraries: foreach (6) graph (4) math (6) mpl (2) multi_index (5) parameter (4) serialization (40) spirit (2) thread (8) typeof (4) wave (4) |foreach| user_defined: cw-8_3 cw-9_4 msvc vc-6_5 vc-6_5-stlport vc-7_0 |graph| graphviz_test: vc-7_1 vc-7_1 vc-7_1 layout_test: intel-win32-9_0 |math| octonion_test: gcc-4_0-darwin gcc-4_0-darwin quaternion_test: gcc-4_0-darwin gcc-4_0-darwin special_functions_test: gcc-4_0-darwin gcc-4_0-darwin |mpl| size_t: gcc-4_0-darwin gcc-4_0-darwin |multi_index| test_capacity: gcc-4_0-darwin test_list_ops: gcc-4_0-darwin test_modifiers: gcc-4_0-darwin test_safe_mode: gcc-4_0-darwin test_update: gcc-4_0-darwin |parameter| basics: borland-5_6_4 macros: borland-5_6_4 sfinae: borland-5_6_4 unnamed: borland-5_6_4 |serialization| test_class_info_load_binary_archive: cw-9_5-darwin gcc-3_3-darwin gcc-3_4_3-sunos gcc-4_0-darwin test_class_info_load_binary_archive_dll: cw-9_5-darwin gcc-3_3-darwin gcc-3_4_3-sunos gcc-4_0-darwin test_class_info_load_text_archive: gcc-3_3-darwin gcc-3_4_3-sunos gcc-4_0-darwin test_class_info_load_text_archive_dll: gcc-3_3-darwin gcc-3_4_3-sunos gcc-4_0-darwin test_class_info_load_text_warchive: gcc-3_3-darwin gcc-3_4_3-sunos gcc-4_0-darwin test_class_info_load_text_warchive_dll: gcc-3_3-darwin gcc-3_4_3-sunos gcc-4_0-darwin test_class_info_load_xml_archive: cw-9_5-darwin gcc-3_3-darwin gcc-3_4_3-sunos gcc-4_0-darwin test_class_info_load_xml_archive_dll: cw-9_5-darwin gcc-3_3-darwin gcc-3_4_3-sunos gcc-4_0-darwin test_class_info_load_xml_warchive: gcc-3_3-darwin gcc-3_4_3-sunos gcc-4_0-darwin test_class_info_load_xml_warchive_dll: gcc-3_3-darwin gcc-3_4_3-sunos gcc-4_0-darwin test_const_save_fail1: msvc test_const_save_fail2: msvc test_const_save_fail3: msvc test_map_binary_archive_dll: msvc test_map_text_archive_dll: msvc test_map_text_warchive_dll: msvc |spirit| traverse_tests: intel-win32-9_0 traverse_tests_debug: intel-win32-9_0 |thread| test_barrier_lib: intel-9.0-linux test_condition_lib: intel-9.0-linux test_mutex_lib: intel-9.0-linux test_once_lib: intel-9.0-linux test_read_write_mutex_lib: intel-9.0-linux test_thread_lib: intel-9.0-linux test_tss_lib: intel-9.0-linux test_xtime_lib: intel-9.0-linux |typeof| type_emulation: gcc-2.95.3-linux gcc-2.95.3-stlport-4.6.2-linux type_native: gcc-2.95.3-linux gcc-2.95.3-stlport-4.6.2-linux |wave| test_re2c_lexer: intel-9.0-linux test_slex_lexer: intel-9.0-linux testwave: gcc-3.3.6-linux intel-9.0-linux

On 9/3/05 1:00 PM, "Douglas Gregor" <dgregor@cs.indiana.edu> wrote:
Boost regression test failures ------------------------------ Report time: 2005-09-03T05:00:17Z [SNIP] Detailed report: http://engineering.meta-comm.com/boost-regression/CVS-HEAD/developer/issues.... ml [SNIP] |math| octonion_test: gcc-4_0-darwin gcc-4_0-darwin quaternion_test: gcc-4_0-darwin gcc-4_0-darwin special_functions_test: gcc-4_0-darwin gcc-4_0-darwin [TRUNCATE]
It looks like some code isn't handling the improved "long double" type very well.... (With Mac OS X Tiger 10.4 and GCC 4, the "long double" type is finally distinct and bigger than "double". The pre-Tiger warnings about not using "long double" are obviously removed. But it looks like the "double" version of "exp" is being used. Taking a quick look at a system "math.h"... I'm not sure there is a "long double" overload of "exp", just "expl".) -- Daryle Walker Mac, Internet, and Video Game Junkie darylew AT hotmail DOT com

On Sep 5, 2005, at 12:11 PM, Daryle Walker wrote:
On 9/3/05 1:00 PM, "Douglas Gregor" <dgregor@cs.indiana.edu> wrote:
Boost regression test failures ------------------------------ Report time: 2005-09-03T05:00:17Z [SNIP] Detailed report: http://engineering.meta-comm.com/boost-regression/CVS-HEAD/developer/ issues.ht ml [SNIP] |math| octonion_test: gcc-4_0-darwin gcc-4_0-darwin quaternion_test: gcc-4_0-darwin gcc-4_0-darwin special_functions_test: gcc-4_0-darwin gcc-4_0-darwin [TRUNCATE]
It looks like some code isn't handling the improved "long double" type very well.... (With Mac OS X Tiger 10.4 and GCC 4, the "long double" type is finally distinct and bigger than "double". The pre-Tiger warnings about not using "long double" are obviously removed. But it looks like the "double" version of "exp" is being used. Taking a quick look at a system "math.h"... I'm not sure there is a "long double" overload of "exp", just "expl".)
Sounds like we need to do some specializing for Tiger's GCC 4.0. Would you submit a patch to fix these problems? Doug

At 3:41 PM -0500 9/6/05, Doug Gregor wrote:
On Sep 5, 2005, at 12:11 PM, Daryle Walker wrote:
On 9/3/05 1:00 PM, "Douglas Gregor" <dgregor@cs.indiana.edu> wrote:
Boost regression test failures ------------------------------ Report time: 2005-09-03T05:00:17Z [SNIP] Detailed report: http://engineering.meta-comm.com/boost-regression/CVS-HEAD/developer/ issues.ht ml [SNIP] |math| octonion_test: gcc-4_0-darwin gcc-4_0-darwin quaternion_test: gcc-4_0-darwin gcc-4_0-darwin special_functions_test: gcc-4_0-darwin gcc-4_0-darwin [TRUNCATE]
It looks like some code isn't handling the improved "long double" type very well.... (With Mac OS X Tiger 10.4 and GCC 4, the "long double" type is finally distinct and bigger than "double". The pre-Tiger warnings about not using "long double" are obviously removed. But it looks like the "double" version of "exp" is being used. Taking a quick look at a system "math.h"... I'm not sure there is a "long double" overload of "exp", just "expl".)
Sounds like we need to do some specializing for Tiger's GCC 4.0. Would you submit a patch to fix these problems?
in <cmath>, rather than <math.h>, there is: long double exp(long double __x); -- -- Marshall Marshall Clow Idio Software <mailto:marshall@idio.com> It is by caffeine alone I set my mind in motion. It is by the beans of Java that thoughts acquire speed, the hands acquire shaking, the shaking becomes a warning. It is by caffeine alone I set my mind in motion.

On Sep 7, 2005, at 2:41 PM, Marshall Clow wrote:
At 3:41 PM -0500 9/6/05, Doug Gregor wrote:
On Sep 5, 2005, at 12:11 PM, Daryle Walker wrote:
On 9/3/05 1:00 PM, "Douglas Gregor" <dgregor@cs.indiana.edu> wrote:
Boost regression test failures ------------------------------ Report time: 2005-09-03T05:00:17Z [SNIP] Detailed report:
http://engineering.meta-comm.com/boost-regression/CVS-HEAD/ developer/ issues.ht ml [SNIP] |math| octonion_test: gcc-4_0-darwin gcc-4_0-darwin quaternion_test: gcc-4_0-darwin gcc-4_0-darwin special_functions_test: gcc-4_0-darwin gcc-4_0-darwin [TRUNCATE]
It looks like some code isn't handling the improved "long double" type very well.... (With Mac OS X Tiger 10.4 and GCC 4, the "long double" type is finally distinct and bigger than "double". The pre-Tiger warnings about not using "long double" are obviously removed. But it looks like the "double" version of "exp" is being used. Taking a quick look at a system "math.h"... I'm not sure there is a "long double" overload of "exp", just "expl".)
Sounds like we need to do some specializing for Tiger's GCC 4.0. Would you submit a patch to fix these problems?
in <cmath>, rather than <math.h>, there is: long double exp(long double __x);
I've traced through this, and the right "exp" is getting called. The machine epsilon for long double is: 4.9406564584124654417656879286822137236505980261432476442558568250067550 727020875e-324 There's no *way* we'll get that much accuracy out of the C library's sin/atan/cos/etc. Here's the result of a little program that prints out atan(1), 4*atan(1), and sin(4*atan(1)). There isn't a large enough improvement in precision from "double" to "long double": atan(1) with float = 0.785398185253143310546875 4*atan(1) with float = 3.1415927410125732421875 sin(4*atan(1)) with float = -8.74227765734758577309548854827880859375e-08 atan(1) with double = 0.78539816339744827899949086713604629039764404296875 4*atan(1) with double = 3.141592653589793115997963468544185161590576171875 sin(4*atan(1)) with double = 1.224606353822377258211417938582599163055419921875e-16 atan(1) with long double = 0.7853981633974483096282022398515465511081856675446033477783203125 4*atan(1) with long double = 3.14159265358979323851280895940618620443274267017841339111328125 sin(4*atan(1)) with long double = -5.42101086242752217003726400434970855712890625e-20 I don't even think that we can call this a platform bug; we just can't expect the C library routines to have that kind of precision. I think we should consider long double tests on this platform bogus and disable them. Doug
participants (4)
-
Daryle Walker
-
Doug Gregor
-
Douglas Gregor
-
Marshall Clow