2008-04-24 Martin Sebor Merged revs 648509 and 648403 from trunk. 2008-04-15 Martin Sebor STDCXX-832 * include/string.cc (_C_get_rep): Used two static_casts via void* instead of a single reinterpret_cast to prevent HP aCC 6 warning #4232: conversion from "wchar_t*" to a more strictly aligned type. 2008-04-15 Martin Sebor STDCXX-874 * include/string (__rw_replace, __rw_replace_aux): Decorated exported templates with the export keyword. * include/string.cc: Same. 2008-04-24 Martin Sebor * ChangeLog: Regenerated. 2008-04-23 Martin Sebor STDCXX-775 * test/localization/22.locale.time.get.cpp (make_LC_TIME): Asserted postconditions to silence HP aCC 6/cadvise warning #20200: Potential null pointer dereference. 2008-04-23 Martin Sebor STDCXX-771 * test/localization/22.locale.money.put.cpp (run_test): Used volatile to conceal division by zero from optimizers and to silence HP aCC 6 warning #20010-D: Floating-point DIVIDE BY ZERO exception generated. * test/localization/22.locale.moneypunct.cpp (lconvdup): Used operator new instead of the new expression to allocate a type-less block of memory. (check_moneypunct): Deallocated the block of memory allocated in lconvdup() using the matching operator delete() to silence HP aCC warning #20210-D: Mismatch in allocation and deallocation. 2008-04-23 Martin Sebor STDCXX-757 * tests/src/value.cpp (UserClass::assign): Added a (redundant) default label to switch statement to shut up bogus HP aCC warning #20200-D: Potential null pointer dereference. (__rw_from_char): Asserted a trivially true precondition to silence the same warning. (_rw_fmtxarrayv): Removed an unused local variable. 2008-04-23 Martin Sebor Merged revs 650902 and 650933 from trunk. * src/num_put.cpp (__rw_isqnan, __rw_issnan, __rw_fmat_infinite): Silence HP aCC remark #2826-D: parameter was never referenced. 2008-04-23 Farid Zaripov STDCXX-880 * src/num_put.cpp: Added simple overloads of the __rw_isfinite(), __rw_signbit(), __rw_isinf(), __rw_isnan(), __rw_isqnan(), __rw_issnan() for float and long double types. 2008-04-23 Farid Zaripov STDCXX-880 * src/num_put.cpp [_RWSTD_DBL_SIZE == _RWSTD_LDBL_SIZE]: Call double type overload from long double type overload when sizeof (double) == sizeof (long double). 2008-04-23 Martin Sebor STDCXX-745 STDCXX-746 STDCXX-747 * src/locale_body.cpp [6 <= HP aCC <= 6.16]: Silenced bogus HP aCC 6.16/cadvise warning #20200-D: Potential null pointer dereference. * src/locale_name.cpp: Same. * locale_combine.cpp: Same. STDCXX-879 * src/locale_combine.cpp (_C_get_body): Used a previously computed value of the expected type to silence HP aCC remark #4271 type conversion may lose sign. 2008-04-23 Martin Sebor STDCXX-729 * include/loc/_money_put.cc [__GNUG__] (_C_put): Silenced bogus gcc -Wuninitialized warning: object may be used uninitialized in this function while avoiding bogus HP aCC/cadvise warning 20200: potential null pointer dereference. 2008-04-23 Martin Sebor STDCXX-879 * tests/algorithms/25.random.shuffle.cpp: Changed the type used to explicitly instantiate the algorithm to avoid HP aCC remark 4271: type conversion may lose sign. 2008-04-22 Martin Sebor * tests/src/opt_diags.cpp (_rw_match_name): Asserted (obviously holding) preconditions to shut up bogus HP aCC 6 warning 20200: Potential null pointer dereference. 2008-04-22 Martin Sebor STDCXX-890 * include/rw/_defs.h (_RWSTD_ATTRIBUTE_NORETURN): Defined macro to be empty when not yet #defined. (__rw_assert_fail): Replaced _RWSTD_GNUC_ATTRIBUTE ((noreturn)) with _RWSTD_ATTRIBUTE_NORETURN. * include/rw/_config-acc.h [aCC 6] (_RWSTD_ATTRIBUTE_NORETURN): Defined macro to __attribute__((noreturn)) for HP aCC 6 and better. * include/rw/_config-gcc.h (_RWSTD_ATTRIBUTE_NORETURN): Defined macro to __attribute__((noreturn)) for all versions of gcc. 2008-04-22 Martin Sebor STDCXX-756 * tests/src/printf.cpp (_rw_fmtexpr): Handled malloc(() failure to silence HP aCC 6 warning 20200: Potential null pointer dereference. (_rw_pvasnprintf, rw_sprintf, rw_snprintf): Cast operand to a wider type before adding to it to silence HP aCC remark 4298: addition result could be truncated before cast to bigger sized type. (_rw_fmtstr): Commented out redundant extern keyword to silence the annoying HP aCC 6 remark 4244: extern storage class used with a function definition. (_rw_quotechar): Made use of the new _RWSTD_UWCHAR_INT_T type to silence HP aCC 6 remark 4248: comparison of unsigned integer with a signed integer. (_rw_fmtfloating): Replaced a for loop with an equivalent call to strlen() to silence another useless HP aCC remark, 4315: for loop without body, did you insert an extra ';'? 2008-04-22 Martin Sebor * 26.valarray.cassign.cpp (run_test): Disabled tests exercising valarray specializations on a user-defined type for 4.2.1 and prior since they are known to fail to compile due to STDCXX-512. 2008-04-22 Martin Sebor STDCXX-754 * tests/src/cmdopt.cpp (rw_vsetopts): Handled malloc() failure. Added an assertion to silence a bogus HP aCC 6/cadvise warning #20200-D: Potential null pointer dereference. Unfortunately, with the one gone another bogus one pops up... 2008-04-22 Martin Sebor STDCXX-753 * util/charmap.cpp (Charmap::convert_to_ucs): Unconditionally allocated (8 + 1) bytes for the longest UTF-8 character rather than assuming that MB_LEN_MAX is large enough. 2008-04-21 Martin Sebor * Merged revs 649223, 649311, 649363, 649562, 649563, 649564, 649565, 649620, 649646, and 649673 from trunk: 2008-04-17 Martin Sebor * tests/localization/22.locale.ctype.narrow.cpp: Corrected comments. (test_narrow_widen): Used rw_info() to write out the name of each tested locale. (test_libstd): New function/placeholder to exercise our standalone implementation of locale (independent of libc). (run_test): Called test_libstd(). (run_test): Used the set of locales specified on the command line instead of the hardcoded pattern. Added an _RWSTD_NO_WCHAR_T guard. (main): Used the rw_opt_setlocales handler. 2008-04-17 Martin Sebor STDCXX-700 * tests/utilities/20.temp.buffer.mt.cpp (thr_func): Used the right formatting directive. 2008-04-17 Martin Sebor STDCXX-879 * src/facet.cpp (_C_get_data): Explicitly converted pointer difference to size_t to avoid HP aCC remark #4271-D: type conversion may lose sign. * src/collate.cpp (do_transform): Same. * src/locale_name.cpp (name): Same. * src/locale_core.cpp (_C_get_std_facet): Same. * src/num_put.cpp (__rw_itoa): Changed the type of a local to match the the type of the expression it's initialized with to silence the same remark. (__rw_itoa): Silenced gcc (but not aCC) warning: comparison between signed and unsigned integer expressions in an assertion. 2008-04-18 Eric Lemings STDCXX-870 * tests/strings/21.string.exceptions.cpp: Migrated new test from old Perforce repository. 2008-04-18 Eric Lemings STDCXX-867 * tests/numerics/26.valarray.transcend.cpp: Migrated new test from old Perforce repository. 2008-04-18 Eric Lemings STDCXX-866 * tests/localization/22.locale.ctype.widen.cpp: Migrated new test from old Perforce repository. 2008-04-18 Eric Lemings STDCXX-865 * tests/intro/17.extensions.cpp: Migrated new test from old Perforce repository. 2008-04-18 Martin Sebor * tests/regress/22.locale.money.get.stdcxx-62.cpp: Added regression test for STDCXX-62. 2008-04-18 Farid Zaripov * include/rw/_defs.h: #define new general purpose config macro _RWSTD_UWCHAR_INT_T. * include/loc/_ctype.h (narrow): Cast __c to _RWSTD_UWCHAR_INT_T to avoid warnings about signed/unsigned comparisons. 2008-04-18 Martin Sebor STDCXX-812 * tests/localization/22.locale.num.get.mt.cpp [_RWSTD_OS_HP_UX || _ILP32] (rw_opt_nlocales): Decreased from the default to 10 in order to work around an HP-UX inefficiency, and renamed to opt_nlocales to avoid inappropriately using rwtest convention. STDCXX-886 * tests/localization/22.locale.num.get.mt.cpp (thread_func): Avoided appending NUL characters to the input sequence to prevent failures in locales where the C++ thoudsands_sep is the NUL character. (test_get_data): Renamed function argument to match its type. 2008-04-18 Travis Vitek * include/rw/_config.h: Update _RWSTD_VER macro to correctly reflect the library version. 2008-04-18 Farid Zaripov Merged changes from trunk. 2008-04-18 Farid Zaripov * etc/config/windows/configure.wsf (linkFiles): Link with libraries, specified in LIBS config variable. (makeLibrary): Ditto. 2008-04-18 Farid Zaripov * include/rw/_defs.h: #define new general purpose config macro _RWSTD_UWCHAR_INT_T. * include/loc/_ctype.h (narrow): Cast __c to _RWSTD_UWCHAR_INT_T to avoid warnings about signed/unsigned comparisons. 2008-04-16 Farid Zaripov Merged from trunk the changes for 4.2.1 release. 2008-03-16 Martin Sebor STDCXX-770 * doc/stdlibref/basic-ios.html (copyfmt): Added Table 40: copyfmt() Postconditions. (init): Added Table 41: init() Postconditions. * doc/stdlibref/lists.html: Added references to Tables 40 and 41. 2008-01-12 William A. Rowe, Jr. * doc/stdlibref/codecvt.html: repos/asf/incubator/stdcxx -> repos/asf/stdcxx for migration to top level project. 2008-03-27 Scott Zhong STDCXX-401 * etc/config/makefile.rules (run): Used the POSIX TMPDIR environment variable instead of TMP. * etc/config/run_locale_utils.sh: Same. 2008-04-01 Andrew Black * build/bin/run_utils: Update result footer format to match format expected by exec utility. Footer search logic changed in r643120. 2008-03-27 Farid Zaripov * etc/config/src/EMPTY_MEM_INITIALIZER.cpp: Replace tab character to spaces. * etc/config/src/UNAME.cpp: Ditto. * examples/manual/bitset.cpp: Ditto. * examples/manual/codecvt.cpp: Ditto. * examples/manual/codecvt1.cpp: Ditto. * examples/manual/generate.cpp: Ditto. * examples/manual/ifstream.cpp: Ditto. * examples/manual/istringstream.cpp: Ditto. * examples/manual/lex_compare.cpp: Ditto. * examples/manual/max_elem.cpp: Ditto. * examples/manual/memfunref.cpp: Ditto. * examples/manual/merge.cpp: Ditto. * examples/manual/mismatch.cpp: Ditto. * examples/manual/partition.cpp: Ditto. * examples/manual/remove.cpp: Ditto. * examples/tutorial/spell.cpp: Ditto. * include/loc/_moneypunct.h: Ditto. * include/loc/_num_get.h: Ditto. * include/rw/_exception.h: Ditto. * include/rw/_tree.cc: Ditto. * include/rw/_tree.h: Ditto. * include/set: Ditto. * include/sstream.cc: Ditto. * src/exception.cpp: Ditto. * src/ia64/atomic.s: Ditto. * src/iostream.cpp: Ditto. * src/iso2022.h: Ditto. * src/messages.cpp: Ditto. * src/valarray.cpp: Ditto. * tests/localization/22.locale.ctype.tolower.cpp: Ditto. * tests/localization/22.locale.ctype.toupper.cpp: Ditto. * tests/localization/22.locale.messages.cpp: Ditto. * tests/numerics/26.class.gslice.cpp: Ditto. * tests/src/23.containers.cpp: Ditto. * tests/src/ctype.cpp: Ditto. * tests/src/locale.cpp: Ditto. * tests/src/opt_lines.cpp: Ditto. * util/aliases.cpp: Ditto. * util/def.h: Ditto. * util/scanner.cpp: Ditto. * util/scanner.h: Ditto. 2008-04-04 Farid Zaripov STDCXX-660 * etc/config/src/EQUAL_CTYPE_MASK.cpp: New file to check that ctype mask's for char and wchar_t are equal. * src/wctype.cpp [_RWSTD_NO_EQUAL_CTYPE_MASK] (__rw_classic_wide_tab): Static array with ctype mask's for wide characters. [_RWSTD_NO_EQUAL_CTYPE_MASK] (__rw_init_classic_wide_tab): New function to initialize __rw_classic_wide_tab array. [_RWSTD_NO_EQUAL_CTYPE_MASK] (ctype::ctype): Initialize __rw_classic_wide_tab array exactly once using __rw_once(). 2008-04-01 Eric Lemings STDCXX-708 * etc/config/src/float_defs.h: Corrected two #if directives per suggestions in issue comments. 2008-04-10 Farid Zaripov * etc/config/src/headers.inc: Added checking the functions. 2008-04-02 Farid Zaripov STDCXX-740 * etc/config/src/INFINITY.cpp (flt_bits): Fill with zero values the bits array. (dbl_bits): Same. (ldbl_bits): Same. 2008-04-15 Martin Sebor STDCXX-873 * etc/config/src/libc_decl.sh [vanilla EDG eccp]: Suppressed EDG eccp error #450-D: the type "long long" is nonstandard before #including libc headers. 2008-04-01 Andrew Black * etc/config/windows/run_locale_utils.wsf (run_locale_utils): Replication of r643435 for Windows. (Update result footer format to match format expected by exec utility. Footer search logic changed in r643120.) 2008-03-26 Travis Vitek STDCXX-715 * etc/nls/countries: New file to map country names and aliases to the ISO-3166 country code. * etc/nls/encodings: New file to map codeset names and aliases to the IANA preferred name. * etc/nls/languages: New file to map language names and aliases to the ISO-639-1 language code. 2008-03-31 Travis Vitek STDCXX-715 * etc/nls/countries: Fix error in countries list. * etc/nls/languages: Ditto. 2008-04-07 Martin Sebor STDCXX-831 * exmaples/manual/fmtflags_manip.cpp (fmtflags_manip, saveflags): Avoid converting -1 to fmtflags due to the unspecified result of the operation and to silence HP aCC 6 warnings. 2008-03-20 Martin Sebor STDCXX-789 * examples/manual/random_shuffle.cpp (main): Set fixed floating point format to suppress the decimal point in iostream output. 2008-03-22 Martin Sebor STDCXX-768 * include/ansi/climits: Used gcc's #include_next to include the compiler's header and to prevent the gcc 4.3 error: no include path in which to search for limits.h. 2008-03-22 Martin Sebor STDCXX-768 * include/ansi/limits.h: Used the gcc extension #include_next to include the compiler's header and to prevent a gcc 4.3 error: no include path in which to search for limits.h. 2008-03-26 Martin Sebor * include/ansi/climits [__GNUC__ >= 3]: Silenced gcc warnings issued for uses of the #include_next extension introduced in the process of resolving STDCXX-768. 2008-03-16 Farid Zaripov STDCXX-635 * include/deque (operator-): If one of the iterators is the iterator of the empty deque, return difference between _C_cur data members. 2008-03-16 Farid Zaripov * include/deque (operator-): Privatized names of pointer types. 2008-03-27 Farid Zaripov * include/deque (operator-): Return difference between _C_cur only if both of iterators are the end-iterators of the empty deque's. 2008-03-31 Martin Sebor STDCXX-814 * include/iomanip (__rw_setbase): Cast first argument of a shift expression to unsigned int to avoid benign arithmetic overflow and silence HP aCC 6 remark #4300: Overflow while computing constant in left shift operation. * include/loc/_num_get.cc (num_get::_C_get): Same. * src/ios.cpp (ios_base::flags): Same. 2008-04-14 Farid Zaripov STDXX-854 * include/loc/_ctype.h (narrow): Don't cast __c to unsigned char, use __c as index in _C_narrow_tab. 2008-04-07 Martin Sebor STDCXX-830 * include/loc/_localedef.h [6 <= _RWSTD_HP_aCC_MAJOR]: Suppressed HP aCC remarks 4298 and 4299 for most of the header since they don't indicate a problem. 2008-02-13 Martin Sebor STDCXX-729 * _money_put.cc (_C_put): Worked around an HP aCC 6.15/cadvise bug causing warning #20200-D: potential null pointer dereference. 2008-02-26 Travis Vitek * include/loc/_money_put.cc: Eliminate uninitialized variable warning. 2008-03-31 Martin Sebor STDCXX-804 * include/ostream (ostream::_C_opfx): Detect and avoid flushing streams that are tied together or that share the same buffer to prevent deadlock or infinite recursion. 2008-03-18 Martin Sebor * include/loc/_num_get.h [LONG_MAX <= SHRT_MAX] (__rw_check_overflow_short): Silenced unused parameter warnings/remarks. [LONG_MAX <= INT_MAX] (__rw_check_overflow_int): Same. 2008-03-18 Martin Sebor * include/loc/_num_get.h: Bumped up year in copyright notice. 2008-03-24 Martin Sebor STDCXX-748 * include/rw/_array.h (__rw_array::__rw_array): Initialized _C_size after initializing _C_data to silence a bogus HP aCC 6.16/cadvise warning #20200-D: Potential null pointer dereference is detected. 2008-03-26 Farid Zaripov * include/rw/_config-gcc.h [__CYGWIN__ && _RWSHARED]: #define _RWSTD_NO_REPLACEABLE_NEW_DELETE macro to disable using of the replacement new/delete operators. 2008-04-08 Martin Sebor STDCXX-843 * include/rw/_mbstate.h [_RWSTD_OS_SUNOS] (__mbstate_t): Used _RWSTD_LONG_SIZE instead of testing the _LP64 system macro which may or may not be #defined, depending on the already #included headers. 2008-03-18 Martin Sebor STDCXX-595 * include/rw/_mutex.h [_RWSTD_POSIX_THREADS && _RWSTD_EDG_ECCP && _RWSTD_OS_LINUX && _RWSTD_NO_LONG_LONG]: Disabled EDG eccp error #450-D: the type "long long" is nonstandard when using the vanilla EDG eccp in strict mode (i.e., w/o long long support). 2008-04-15 Farid Zaripov * include/rw/_mutex.h (__rw_atomic_exchange): New overload for bool type to avoid using of template overload with mutex to atomically swap two bool's (used in std::ios_base::sync_with_stdio()). 2008-02-05 Martin Sebor STDCXX-645 * _streamiter.h (operator++): Tested associated stream for eofbit rather than (badbit|failbit) as (admittedly somewhat ambiguously) specifiedn [istream.iterator]. (operator==): Simplified and corrected to compare stream pointers only without taking the states of the stream objects into account. 2008-02-06 Martin Sebor STDCXX-645 * include/rw/_streamiter.h (operator*): Checked fail() instead of eof() on the associated stream before turning the object into the end-of-stream iterator, as per LWG issue 788. * tests/iterators/24.istream.iterator.cpp (test_ctors): Inserted a valid number instead of NUL into test stream. (test_ops): Changed the expected result of equality comparison with the end-of-stream iterator according to LWG issue 788. (opt_char, opt_wchar_t, opt_UserTraits, opt_short, opt_int, opt_long, opt_double): Added "tri-state" options. (do_test, run_test, main): Handled said options. 2008-02-05 Martin Sebor * 24.istream.iterator.cpp: New test exercising [istream.iterator], including STDCXX-645. 2008-04-07 Martin Sebor * tests/iterators/24.istream.iterator.cpp (test_ops): Parenthesized subexpression to shut up the annoying HP aCC warning #4259-D: suggest parentheses around the operands of "!=" and similarly for gcc 4.3. 2008-02-11 Martin Sebor STDCXX-687 * include/rw/_traits.h [__GNUG__](_RWSTD_MEMCPY, _RWSTD_MEMCMP, _RWSTD_MEMMOVE, _RWSTD_MEMSET, _RWSTD_STRLEN): #defined macros to the corresponding gcc __builtins. [4 < __GNUG__ || 3 <= __GNUC_MINOR__](_RWSTD_MEMCHR): #defined to __builtin_memchr starting with this version of the compiler. 2008-03-04 Farid Zaripov * include/rw/_traits.h [4 = __GNUG__ && 3 > __GNUC_MINOR__] (_RWSTD_MEMCHR): #defined to memchr (added missing definition). 2008-04-02 Farid Zaripov STDCXX-799 * include/rw/_traits.h: Don't use gcc string builtins on icc. 2008-03-25 Farid Zaripov STDCXX-795 * include/sstream.cc (str): Save pptr and restore it at the end if str() is called with internal buffer to increase the capacity of buffer (i.e. from xsputn() or overflow()). (xsputn): Remove fix for STDCXX-515 because the pptr now is preserved in str(). 2008-04-07 Martin Sebor STDCXX-832 * include/string (_C_pref): Used two static_casts in favor of reinterpret_cast to prevent HP aCC warning #4232: conversion from "wchar_t*" to a more strictly aligned type. 2008-04-09 Martin Sebor STDCXX-849 * src/file.cpp [_RWSTD_EDG_ECCP] (stderr, stdin, stdout): Undefined macros #defined to __rw_stderr, __rw_stdin, and __rw_stdout in our to prevent self-initialization to 0 and defined them as appropriate for Linux and Solaris instead. 2008-04-11 Martin Sebor * src/file.cpp [_RWSTD_EDG_ECCP]: Fixed a typo in a preprocessing directive that snuck in with a fix for STDCXX-849 in rev 646568. 2008-03-19 Martin Sebor STDCXX-766 * src/iostore.cpp (_C_copyfmt): Copied the tied stream and locale. 2008-02-13 Martin Sebor STDCXX-730 * src/iso2022.cpp (__rw_iso2022jp_designate): Asserted preconditions to silence HP aCC warning #20200-D: Potential null pointer dereference. (__rw_ucs4_to_interm): Corrected a bad conditional pointed out by HP aCC warning #20206-D: Out of bound access. 2008-03-25 Farid Zaripov STDCXX-792 * src/locale_body.cpp (_C_manage): Cast ginit to non-volatile to use the non-template version of the __rw_atomic_preincrement() if available. Declare static variable ginit as int instead of long because the all native atomic functions are defined for int type and the overloads for long type just calls overload for int type on platforms where sizeof (int) == sizeof (long). 2008-03-26 Martin Sebor * src/locale_body.cpp (_C_manage): Used the C++ const_cast to cast away volatile in favor of the C-style variant introduced in a patch for STDCXX-792 (rev 640746) to avoid gcc -Wcast-qual warning: cast from type 'volatile int*' to type 'int*' casts away constness. 2008-04-03 Eric Lemings STDCXX-811 * src/locale_global.cpp (std::locale::global): Replace call to non-reentrant setlocale() C function with reentrant __rw_setlocale object. * tests/localization/22.locale.statics.mt.cpp (test_global): Fix [un]signed integer conversion warnings. 2008-04-03 Eric Lemings STDCXX-811 * src/setlocale.cpp (__rw_setlocale_mutex): Make mutex visible to other translation units. * src/locale_global.cpp (std::locale::global): __rw_setlocale object won't work because destructor restores previous locale. Guard on mutex and revert to original call to setlocale(). 2008-04-04 Farid Zaripov * src/once.cpp (__rw_once): Cast init to int& to avoid using mutex version of __rw_atomic_preincrement() when atomic version is present. 2008-04-11 Farid Zaripov * src/once.cpp (__rw_once): Cast init to int& to avoid using mutex version of __rw_atomic_predecrement() when atomic version is present (see r644662). 2008-04-03 Farid Zaripov STDCXX-824 * src/num_get.cpp (__rw_get_num): If type == _C_pvoid, convert the data in buf using __rw_strtoull() instead of __rw_strtoul() on LLP64 platforms. 2008-04-09 Farid Zaripov STDCXX-51 * src/num_put.cpp (__rw_isfinite): New function to detect inf and nan values. (__rw_signbit): New function to detect the sign of floating point value. (__rw_isinf): New function to detect inf values. (__rw_isnan): New function to detect nan values. (__rw_isqnan): New function to detect quiet nan values. (__rw_issnan): New function to detect signaling nan values. (__rw_fmat_infinite): New function to format inf and nan values. (__rw_put_num): Use __rw_isfinite() and __rw_fmat_infinite() to format inf and nan values. 2008-04-09 Martin Sebor * src/num_put.cpp [_RWSTD_OS_SUNOS]: Included signbit() on Solaris. Needed to complete the patch for STDCXX-51 committed in rev 646396. 2008-04-09 Martin Sebor * src/num_put.cpp [_RWSTD_OS_SUNOS]: Removed the #inclusion of mistakenly introduced in rev 646597 as the functions declared in the header are defined in libsunmath that we don't link with and don't want to start. [_RWSTD_OS_SUNOS] (__rw_signbit): Reimplemented using simple integer arithmetic. Needed to complete the patch for STDCXX-51 initially committed in rev 646396. 2008-03-15 Farid Zaripov STDCXX-763 * src/punct.cpp (__rw_get_stdio_fmat): Always use precision in conversion from floating-point types according to resolution of the lwg issue 231. 2008-03-26 Martin Sebor * src/punct.cpp (__rw_get_stdio_fmat): Remove unused vestigial local variable left behind after resolving STDCXX-763 in rev 637393. 2008-03-29 Martin Sebor STDCXX-98 * src/version (#pragma VERSIONID): Worked around an HP aCC 3.63 ICE. 2008-03-31 Martin Sebor * src/version.cpp (__rw_ident): Updated the name of the library. 2008-03-12 Martin Sebor STDCXX-435 * src/wcodecvt.cpp (__rw_libc_do_in): Replaces use(s) of mbsrtowcs() with mbrtowc() to prevent reading past the end of source sequences that aren't NUL-terminated. 2008-03-12 Martin Sebor * tests/regress/22.locale.codecvt.stdcxx-435.cpp: Added regression test for STDCXX-435. 2008-04-09 Travis Vitek STDCXX-783 * tests/algorithms/25.random.shuffle.cpp (test_random_shuffle): Avoid indexing past the end of arrays when evaluating rw_assert() arguments by checking for failure first. 2008-04-11 Travis Vitek STDCXX-783 * tests/algorithms/25.random.shuffle.cpp (test_random_shuffle): Move rw_assert() into loop to avoid bogus cadvise warning. 2008-03-31 Farid Zaripov STDCXX-803 * tests/containers/23.bitset.cpp (test_ctors): Declare bmask as unsigned long to resolve ambiguity on MSVC. 2008-04-07 Martin Sebor * tests/containers/23.list.cons.cpp (ConsRangePtrOverload): Removed a pointless const qualifier from the target type of a const_cast to silence HP aCC warning #2191-D: type qualifier is meaningless on cast type. * (test_cons): Cast an argument to the expected type to silence HP aCC 6 remark #4271-D: type conversion may lose sign. (main): Removed an unused local variable. 2008-04-07 Travis Vitek * tests/support/18.support.dynamic.cpp: New test exercising functions and types for dynamic storage management. * tests/support/18.support.rtti.cpp: New test exercising types for dynamic type information support. * tests/diagnostics/19.std.exceptions.cpp: New test exercising standard exception types. 2008-04-09 Farid Zaripov * tests/diagnostics/19.std.exceptions.cpp (run_test): Use rw_warn() instead of rw_assert() on platforms where replacement new/delete operators can't be defined. 2008-04-14 Farid Zaripov * tests/include/21.strings.h: Removed incorrect overload id. * tests/src/21.strings.cpp: Ditto. 2008-03-28 Martin Sebor STDCXX-709 * tests/include/23.containers.h (ContainerTestCaseData): Declared member pointers non-const for 6.0 <= HP aCC <= 6.16 to work around a compiler bug. (ContainerTestCaseData, ~ContainerTestCaseData): Outlined ctor and dtor to reduce code bloat. 2008-03-28 Martin Sebor * tests/include/23.containers.h (): Moved an #include directive from here... * tests/src/23.containers.cpp: ...to here to reduce namespace clutter. 2008-04-01 Martin Sebor * test/include/23.containers.h (~ContainerTestCaseData): Tweaked a workaround for STDCXX-802 to avoid preprocessor conditionals. 2008-03-29 Martin Sebor * tests/include/23.list.h (): Added #include directive after rev 642384 removed it from tests/include/23.containers.h. (): Moved an include directive outside the scope of a class and into file scope where it should be. 2008-03-26 Travis Vitek * tests/src/driver.cpp (rw_enable): Return previous state for the diagnostic so it can be safely disabled and restored. * tests/include/driver.h (rw_enable): Ditto. Update comments. 2008-03-28 Travis Vitek * tests/src/driver.cpp (rw_enable): Reverse logic so that returned value is correct and consistent with documentation. 2008-03-27 Travis Vitek STDCXX-716 * tests/include/rw_locale.h (rw_query_locales): Add declaration of new function. * tests/src/locale.cpp (atexit_rm_locale_root): Temporarily disable disgnostic messages to avoid warnings that occur because function is called after run_test() has returned. (rw_query_locales): Add new function to query installed locales by language, country, codeset or MB_CUR_LEN. 2008-03-28 Travis Vitek STDCXX-714 * tests/src/braceexp.cpp: Remove _rw_isspace(), _rw_isupper() and _rw_islower(). Use appropriate C library calls instead. STDCXX-716 * tests/src/locale.cpp: Remove _rw_isspace(), _rw_toupper() and _rw_tolower(). Use appropriate C library calls instead. 2008-02-17 Travis Vitek STDCXX-714 * tests/include/rw_braceexp.h: Added a new header to declare the test suite helper function rw_brace_expand(). * tests/src/braceexp.cpp: New source file to define rw_brace_expand(). * tests/self/0.braceexp.cpp: New test to exercise rw_brace_expand() 2008-02-18 Martin Sebor * tests/include/rw_braceexp.h: Set svn:eol-style and svn:keywords properties. * tests/src/braceexp.cpp: Ditto. * tests/self/0.braceexp.cpp: Ditto. 2008-02-19 Travis Vitek * tests/src/braceexp.cpp: Use unsigned values where appropriate Use change type of seperator to char instead of int. Inlines a few small functions. General cleanup. * tests/include/rw_braceexp.h: Ditto. Add documentation for rw_brace_expand(). 2008-02-25 Travis Vitek STDCXX-714 * tests/include/rw_braceexp.h: Add grammar description for rw_brace_expand(). Add declaration for rw_shell_expand(). * tests/src/braceexp.cpp: Add helper type _rw_string_buffer to reduce duplicated code. (_rw_is_upper): Fix to support EBCDIC encodings. (_rw_is_upper): Ditto. (_rw_is_space): Add function to detect whitespace. (_rw_is_not_space): Add function to detect non whitespace. (rw_find_match): Add function to find first character that matches according to some callback function. (_rw_itoa_10): Add function to write integer values like sprintf() without dependencies on the locale. (_rw_find_open_brace): Fix to avoid expanding tokens that look like shell variable expansions. (rw_shell_expand): Add function to do shell-like string tokenization and expansion. * tests/self/0.braceexp.cpp (run_bash_tests): Removed test. (run_brace_expand_tests): Add test to verify old function rw_brace_expand. Updated to expect failures with invalid expressions. (run_shell_expand_tests): Add test to verify new function rw_shell_expand. 2007-12-20 Martin Sebor STDCXX-683 * tests/include/rw_fnmatch.h: Added a new header declaring the rw_fnmatch() test suite helper function paralleling the POSIX function with the same name. * tests/src/fnmatch.cpp: New source file to define rw_fnmatch(). * 0.fnmatch.cpp: New test to exercise rw_fnmatch(). 2008-04-08 Eric Lemings * tests/iostream/27.istream.fmat.arith.cpp (test_extractor): Typo. 2008-03-31 Martin Sebor STDCXX-818 * tests/iostream/27.objects.cpp (operator new): Avoid calling rw_warn() except when it has something to warn about in case operator new() is being called by the compiler's C++ runtime (e.g., HP aCC 6.16) before the driver has been initialized (otherwise the driver aborts). 2008-04-15 Farid Zaripov * tests/localization/22.locale.codecvt.mt.cpp: Use %d format instead of %zu for printing the number of iterations to avoid printing the incorrect value on LLP64 platforms). * tests/localization/22.locale.cons.mt.cpp: Ditto. * tests/localization/22.locale.ctype.mt.cpp: Ditto. * tests/localization/22.locale.messages.mt.cpp: Ditto. * tests/localization/22.locale.money.get.mt.cpp: Ditto. * tests/localization/22.locale.money.put.mt.cpp: Ditto. * tests/localization/22.locale.moneypunct.mt.cpp: Ditto. * tests/localization/22.locale.num.get.mt.cpp: Ditto. * tests/localization/22.locale.num.put.mt.cpp: Ditto. * tests/localization/22.locale.numpunct.mt.cpp: Ditto. * tests/localization/22.locale.statics.mt.cpp: Ditto. * tests/localization/22.locale.time.get.mt.cpp: Ditto. * tests/localization/22.locale.time.put.mt.cpp: Ditto. * tests/strings/21.string.cons.mt.cpp: Ditto. * tests/strings/21.string.push_back.mt.cpp: Ditto. 2008-01-15 Martin Sebor STDCXX-700 * tests/localization/22.locale.codecvt.out.cpp (): Removed #include directive. (get_mb_chars, find_mb_locale): Replaced calls to std::fprintf() with rw_fprintf(). * tests/localization/22.locale.time.put.cpp (make_LC_TIME): Silenced HP aCC 6 warning #2181-D: argument is incompatible with corresponding format string conversion. * tests/localization/22.locale.time.put.cpp (make_LC_TIME): Same. * tests/utilities/20.temp.buffer.mt.cpp (thr_func): Same. * tests/support/18.numeric.special.int.cpp (Limits:: compute_digits10): Same. * util/locale.cpp (print_ce_info, print_charmap): Same. * util/ctype.cpp (process_sym_ellipsis): Same. 2008-03-31 Travis Vitek STDCXX-716 * tests/src/locale.cpp: Add functions _rw_isspace(), _rw_toupper() and _rw_tolower() to avoid problems when sign extending character to int. (_rw_all_locales): Avoid using uninitialized struct member in calls to rw_note(). Use _rw_isspace(), _rw_toupper() and _rw_tolower(). Remove duplicate locales using canonical locale name matching. (rw_locale_query): Use larger buffer for cached locale name to avoid buffer overflow. Remember to close file on error condition. Use _rw_isspace(), _rw_toupper() and _rw_tolower(). * tests/localization/22.locale.ctype.tolower.cpp: Use rw_locale_query() to select a subset of installed locales. (run_test): Call test_libc() before test_libstd() to avoid problem with our locale utility on windows that causes only C locale to be returned. * tests/localization/22.locale.ctype.toupper.cpp: Ditto. * tests/localization/22.locale.ctype.scan.cpp: Ditto. * tests/localization/22.locale.ctype.cpp: Ditto. * tests/localization/22.locale.ctype.narrow.cpp: Ditto. * tests/localization/22.locale.ctype.is.cpp: Ditto. * tests/localization/22.locale.time.get.cpp: Ditto. 2008-04-07 Travis Vitek * tests/localization/22.locale.ctype.cpp: Cache result of call to rw_locale_query() reduce time needed to run test. * tests/localization/22.locale.ctype.is.cpp: Ditto. * tests/localization/22.locale.ctype.narrow.cpp: Ditto. * tests/localization/22.locale.ctype.scan.cpp: Ditto. * tests/localization/22.locale.ctype.toupper.cpp: Ditto. * tests/localization/22.locale.ctype.tolower.cpp: Ditto. 2008-02-27 Farid Zaripov * tests/localization/22.locale.num.put.cpp (do_test): Fixed error in format string. (inf_nan_test): Corrected number of the issue. (ldbl_test): Added testcase with a precision == 0. 2008-03-15 Farid Zaripov * tests/localization/22.locale.num.put.cpp (dbl_test): Add precision in format specification of the expected result to reflect the resolution of the lwg issue 231. (ldbl_test): Ditto. 2008-03-27 Travis Vitek * tests/localization/22.locale.time.get.cpp (make_LC_TIME): Add namespace qualifier to strlen() call to avoid compile error. 2008-03-30 Martin Sebor STDCXX-4 * tests/localization/22.locale.numpunct.cpp: New test exercising the required specializations of the std::numpunct facet. 2008-03-30 Martin Sebor * tests/localization/22.locale.time.put.cpp (make_LC_TIME): Added an std:: qualification to a call to strlen() missed in rev 604038 to appease strictly conforming compilers such as EDG eccp, or Sun C++. 2008-03-30 Martin Sebor * tests/localization/22.locale.time.get.cpp (make_LC_TIME): Used rw_fatal() to verify postcondition of fopen(). 2008-04-01 Travis Vitek STDCXX-742 * tests/localization/22.locale.messages.cpp (run_test): Avoid use_facet<>() and has_facet<>() when _RWSTD_NO_DYNAMIC_CAST is defined. 2008-04-01 Martin Sebor STDCXX-812 * tests/localization/22.locale.numpunct.mt.cpp [_RWSTD_OS_HP_UX || _ILP32] (rw_opt_nlocales): Decreased from the default 16 to 10 in order to work around an HP-UX inefficiency, and renamed to opt_nlocales to avoid inappropriately using rwtest convention. * tests/localization/22.locale.time.put.mt.cpp: Same. * tests/localization/22.locale.num.put.mt.cpp: Same. * tests/localization/22.locale.ctype.mt.cpp: Same. * tests/localization/22.locale.money.put.mt.cpp: Same except that had to go down to 9 to avoid the same inefficiency. * tests/localization/22.locale.money.get.mt.cpp: Same. 2008-04-02 Martin Sebor * tests/localization/22.locale.money.put.mt.cpp (rw_opt_nthreads, rw_opt_nloops, rw_opt_shared_locale): Removed the rw_ prefix from the names of glabl variables to avoid using rwtest convention. * tests/localization/22.locale.time.put.mt.cpp: Same. * tests/localization/22.locale.num.put.mt.cpp: Same. * tests/localization/22.locale.money.get.mt.cpp: Same. * tests/localization/22.locale.numpunct.mt.cpp: Same. (run_test): Added the number of locales to informational output. 2008-04-03 Farid Zaripov * tests/localization/22.locale.num.get.cpp: Silenced warnings on 64-bit MSVC. (test_pvoid) Correctly exercised overflow conditions on LLP64 platforms. 2008-04-09 Farid Zaripov * tests/localization/22.locale.time.put.cpp (set_TZ): New function to set TZ environment variable and update the state of the global CRT variables using tzset(). (test_POSIX): Use set_TZ() instead of rw_putenv(). Use three-letter time zone name, because the MSVC CRT doesn't supports the time zone names longer than three letter. 2008-04-10 Farid Zaripov * tests/localization/22.locale.time.put.cpp (set_TZ): Use tzset() only if it's present in libc. (test_POSIX): Exercise time zone name of maximum length. 2008-04-11 Farid Zaripov * tests/localization/22.locale.statics.mt.cpp (test_classic): Cast nthreads to int& to avoid using mutex version of __rw_atomic_preincrement() when atomic version is present. 2008-04-11 Travis Vitek STDCXX-779 * tests/localization/22.locale.num.get.cpp: Add new macro T_MAX to eliminate potential for accessing local variable via pointer after it has gone out of scope. Remove global pointer pmax. (do_test): Add new pointer parameter pmax. (test_flt_uflow): Use new T_MAX macro. (test_dbl_uflow): Ditto. (test_ldbl_uflow): Ditto. 2008-04-14 Farid Zaripov * tests/numerics/26.c.math.cpp: Replace rw_any to rw_any_t (caused compilation error of 26.c.math test on Sun C++ 5.9 / Linux). 2008-04-10 Farid Zaripov * tests/regress/22.locale.codecvt.stdcxx-435.cpp (main): Added zero element in names array to correctly terminate the loop. 2008-04-07 Eric Lemings STDCXX-827 * tests/regress/22.locale.stdcxx-554.cpp (test_moneypunct, test_messages): Use a union containing a pointer to properly align storage buffer used for placement new operator. 2008-04-01 Farid Zaripov * tests/regress/21.string.insert.stdcxx-630.cpp: Test removed. This test is added simultaneously (the STDCXX-630 issue is about assign operation, and test exercises the insert operation). 2008-03-31 Martin Sebor * tests/regress/27.basic.ios.tie.stdcxx-804.cpp: Added regression test exercising STDCXX-804. 2008-03-30 Martin Sebor STDCXX-809 * tests/regress/21.string.stdcxx-162.cpp (MUTEX): Corrected a typo in the name of the mutex type on Solaris Threads. 2008-03-25 Farid Zaripov * tests/regress/27.stringbuf.overflow.stdcxx-795.cpp: Regression test for STDCXX-795 issue. 2008-03-19 Martin Sebor * tests/regress/27.basic.ios.copyfmt.stdcxx-766.cpp: Added a regression test for STDCXX-766. 2008-02-12 Martin Sebor * tests/regress/27.filebuf.members.stdcxx-308.cpp: Regression test exercising STDCXX-308. 2008-02-06 Martin Sebor * 24.istream.iterator.ops.stdcxx-321.cpp: Added a regression test for STDCXX-321. 2008-02-05 Martin Sebor * 24.istream.iterator.cons.stdcxx-645.cpp: Added a regression test for STDCXX-645. 2008-04-14 Farid Zaripov * tests/strings/21.string.cons.cpp: Exercise the string ctors overloads with allocator parameter. 2008-04-10 Travis Vitek STDCXX-774 * tests/strings/21.string.iterators.cpp (test_iterators): Avoid dereferencing null pointer. 2008-04-04 Farid Zaripov STDCXX-638 * tests/strings/21.cwctype.cpp (test_behavior): Don't check the extra bits since C99 standard implicitly allows defining extra bits in iswxxx(). (run_test): Use rw_warn() instead of rw_assert() when _RWSTD_STRICT_ANSI macro is not #defined when testing the masking macros and presence of the standard C functions in CRT. 2008-02-29 Travis Vitek STDCXX-597 * tests/strings/21.string.access.cpp (test_access): Avoid purify UMR warning when testing for end of string match 2008-02-29 Travis Vitek * tests/strings/21.string.access.cpp (test_access): Revert previous change. 2007-11-25 Martin Sebor * 18.numeric.special.int.cpp: Migrated test for integer specializations of the std::numeric_limits class template from Rogue Wave test suite. 2008-01-24 Martin Sebor STDCXX-4 * tests/support/18.numeric.special.float.cpp: Migrated the test to exercise floating point specializations of the numeric_limits class template from the Rogue Wave test suite. 2008-01-24 Martin Sebor * tests/support/18.numeric.special.float.cpp (signaling_NaN): Corrected typo. (test_limits): Finished migrating to stdcxx test driver missed in initial submission (r614980). 2008-03-26 Farid Zaripov * tests/support/18.numeric.special.float.cpp (test_limits): Added missing parameters for rw_warn(). 2008-04-01 Eric Lemings STDCXX-708 * tests/support/18.numeric.special.float.cpp: Change expected values for std::numeric_limits::has_denorm() to std::denorm_present on all HP-UX platforms (inc. PA-RISC and IPF) per comments recorded in the issue. 2008-03-25 Martin Sebor STDCXX-615 * tests/tr1.util/2.smartptr.shared.cpp (test_copy_ctor): Avoided using volatile qualified types with HP aCC 3 without the new +hpxstd98 option to work around a compiler bug. 2008-04-14 Eric Lemings STDCXX-841 * trunk/tests/utilities/20.temp.buffer.cpp (test_failure): Print correct value of `sizeof (T)' using rw_sprintf() function. Prevent division by zero in terminal condition of for statement. Also, use parentheses when calculating value of `nelems' to indicate precedence of operators explicitly. 2008-03-27 Farid Zaripov * tests/src/23.containers.cpp (_rw_vector_sigcat): Silenced warning about unused variable. (_rw_deque_sigcat): Same. (_rw_queue_sigcat): Same. (_rw_stack_sigcat): Same. * tests/src/ctype.cpp (_rw_throw): Same. * tests/src/opt_lines.cpp (_rw_enable_line): Same. * tests/src/fnmatch.cpp (_rw_bracketmatch): ch parameted declared as const unsigned char instead of unsigned int. Silenced conversion warnings. Added svn:eol-slyle=native property. * tests/src/locale.cpp (rw_get_wchars): Fill wbuf array with requested wide characters. * tests/src/printf.cpp (_rw_fmt_pointer): Check return value from rw_fmtlong() before adding it to len. 2008-03-27 Farid Zaripov * tests/src/braceexp.cpp (_rw_string_buffer): Declare n parameter as _RWSTD_SIZE_T instead of int to silence conversion warning. * tests/src/char.cpp (_rw_fmtstringv): Silence size_t to int conversion warning. * tests/src/process.cpp (rw_process_kill): Silence conversion warning. * tests/src/printf.cpp (_rw_vasnprintf_c99): Same. (_rw_fmtbadaddr): Same. (_rw_fmtarray): Same. (_rw_vfprintf): Same. Use OutputDebugString() depending on _WIN32 macro instead of _MSC_VER. Don't call IsDebuggerPresent() (which depends on macros _WIN32_WINNT and WINVER) because the OutputDebugString() does nothing if there is no any attached debugger present. * tests/src/rand.cpp (rw_seed32): Declare k as _RWSTD_UINT32 instead of _RWSTD_SIZE_T. Removed useless casting of table32[ii] of type _RWSTD_UINT32 to _RWSTD_SIZE_T before assign the value to _RWSTD_UINT32 seed. (rw_seed32): Declare k as _RWSTD_UINT64 instead of _RWSTD_SIZE_T. Removed useless casting of table64[ii] of type _RWSTD_UINT64 to _RWSTD_SIZE_T before assign the value to _RWSTD_UINT64 seed. 2008-04-15 Farid Zaripov * tests/src/driver.cpp [_MSC_VER] (_rw_opt_verbose): Turn on checking the memory at every allocation and deallocation in verbose mode. (_rw_opt_compat): Disable MSVC debug popup's in compat mode. 2008-03-16 Farid Zaripov STDCXX-646 * tests/src/environ.cpp (rw_putenv): Worked around the putenv() limitations on Windows. 2008-03-15 Farid Zaripov * tests/src/fmt_bits.cpp (_rw_fmtflags): Replace "iostate" to "fmtflags" in default output. Conditionally output of the "std::ios::" prefix for consistency. (_rw_fmt_event): Replace "copyfmt_event" to "event" in default output. Conditionally output of the "std::ios::" prefix for consistency. * tests/self/0.printf.cpp (test_ios_bitmasks): Exercised the %{If} and %{Ie} extensions to format ios::fmtflags and ios::event values. (test_locale_category): New function to exercise %{Lc} extension to format locale category values. (main): Called test_locale_category(). 2008-03-16 Martin Sebor STDCXX-765 * tests/src/fmt_bits.cpp (_rw_bmpfmt): NUL-terminated string so that it can be appended to using the %{+} directive, taking care not to make the NUL a part of the formatted string. (_rw_fmtflags): Same. (_rw_fmtevent): Same. (_rw_fmtlc): Same. 2008-04-04 Travis Vitek STDCXX-755 * tests/src/locale.cpp (rw_locales): Check return from malloc() (_rw_all_locales): Ditto. 2008-04-10 Farid Zaripov * tests/src/locale.cpp (_rw_all_locales): Don't link nodes into result when size == 0 to prevent heap corruption in _rw_reset_locales(). 2008-03-16 Farid Zaripov STDCXX-711 * tests/src/fnmatch.cpp (rw_fnmatch): Check for the end of string before invoking _rw_bracketmatch(). 2008-04-11 Farid Zaripov * tests/src/fnmatch.cpp (rw_fnmatch): Added checking *next for 0 before incrementing next in case '?'. Slightly optimized codeand added some _RWSTD_ASSERT's. 2008-04-02 Martin Sebor * tests/src/braceexp.cpp (UChar): Added a convenience typedef. (_rw_find_match, _rw_brace_graph::build_character_sequence): Cast char to UChar before passing it to isspace, islower, and isupper to avoid undefined behavior on sign extension. (_rw_string_buffer, build_and_expand, _rw_brace_node_buffer, _rw_brace_node, reset_for_reuse, get_new_node, brace_expand_write, build_integer_sequence, brace_expand, rw_brace_expand, rw_shell_expand): Used size_t instead of _RWSTD_SIZE_T for readability. 2008-03-30 Martin Sebor * tests/src/braceexp.cpp (_rw_brace_graph::build_anything): Handled get_new_node's failure pointed out by HP aCC 6.16 warning #20200-D: Potential null pointer dereference is detected. 2008-03-29 Martin Sebor * tests/src/braceexp.cpp (_rw_is_not_space): Removed. (_rw_find_match): Changed last argument from a function pointer to bool to avoid having deal with language linkage incompatibility with isspace and simplified implementation. (rw_shell_expand): Adjusted _rw_find_match calls accordingly. 2008-03-28 Travis Vitek STDCXX-784 * tess/src/braceexp.cpp [_RWSTD_NO_NESTED_CLASS_ACCESS]: Work around issue that causes a compile failure when using private declarations in nested types. 2008-03-24 Travis Vitek STDCXX-784 * tests/src/braceexp.cpp: Work around SunPro bug that causes a compile failure when using private declarations in nested types. 2008-02-28 Travis Vitek * tests/src/braceexp.cpp (rw_shell_expand): Eliminate shadowed variable warnings for s and n. 2008-02-21 Farid Zaripov * tests/src/braceexp.cpp: #defined _RWSTD_TEST_SRC macro, #included . (rw_brace_expand): Defined as _TEST_EXPORT. 2008-04-04 Eric Lemings STDCXX-761 * tests/src/new.cpp (rwt_checkpoint): Added internal rwt_checkpoint_compare function and call it for each array member disguised by original loop. 2007-12-18 Martin Sebor * printf.cpp (rw_snprintf): NUL-terminated string just like snprintf() does. 2008-03-15 Farid Zaripov * tests/src/printf.cpp (rw_vasnprintf): Add assertion when processing the "%{+}" directive to detect buffer overruns. 2008-03-24 Farid Zaripov STDCXX-790 * tests/src/printf.cpp (rw_vasnprintf): Corrected condition in assertion, introduced in r637394. 2008-03-27 Farid Zaripov STDCXX-798 * tests/self/0.printf.cpp (test_memptr): Corrected index calculations according to endianness. Removed colon from expected resulting strings. * tests/src/printf.cpp (_rw_fmtlong): Simplified code. (_rw_fmtllong): Copied from _rw_fmtlong with changing corresponding types to long long. (_rw_fmtpointer): Corrected index calculations according to endianness. Removed adding the colon separator. 2008-04-14 Travis Vitek STDCXX-857 * tests/src/fmt_defs.h: Add flag to struct Buffer to indicate who owns the allocated buffer. * tests/src/printf.cpp (_rw_bufcat): Simplify logic to get new buffer size. Avoid checking guard bytes and deallocating buffer that we do not own. (rw_vasnprintf): Set flag indicating that the caller owns the supplied buffer. (_rw_fmtarray): Ditto. (_rw_fmt_expr): Ditto. * tests/self/0.printf.cpp (test_reallocate): Add new test to verify buffer reallocation works as expected. 2008-04-14 Travis Vitek STDCXX-857 * tests/self/0.printf.cpp (test_reallocate): Revert test for changes added in r647908. 2008-04-14 Travis Vitek STDCXX-857 * tests/src/printf.cpp: Revert r647908 which indirectly caused memory leaks in the test driver and several tests. * tests/src/fmt_defs.h: Ditto. 2008-04-14 Travis Vitek * tests/src/printf.cpp (_rw_bufcat): Simplify logic to get new buffer size. Allocate minimum initial size to avoid a first allocation that only contains the guard bytes. Add comment about guard bytes so others might not get tricked. * tests/src/process.cpp (_rw_vsystem): Avoid using static buffer (might be freed by _rw_bufcat). (_rw_vprocess_create): Ditto. 2008-04-14 Farid Zaripov STDXX-862 * tests/self/0.char.cpp (test_rw_widen): Use UserTraits::compare() instead of memcmp() to avoid false assertions due to possibly different binary representation of (long double)0 and (long double)0. on Sun C++ 5.9 / Linux. 2008-02-18 Martin Sebor * 0.braceexp.cpp (run_bash_tests): New function to verify rw_brace_expand() passes tests from the Bash test suite. (main): Added a handful of tests (some failing), called run_bash_tests. 2008-03-30 Martin Sebor * tests/self/0.braceexp.cpp (test): Used size_t instead of the _RWSTD_SIZE_T macro. (run_tests): Added tests for embedded whitespace. (run_brace_expand_tests): Ditto. (run_shell_expand_tests): Ditto. 2008-04-11 Farid Zaripov * tests/self/0.fnmatch.cpp (main): Exercised some incomplete patterns. 2008-02-05 Martin Sebor * 0.printf.cpp (test_ios_bitmasks): Exercised the %{Is} extension to format ios::iostate values. 2008-02-08 Martin Sebor * display.cpp (print_target_plain): Increased column width to so as to fit the longest test name (currently 35 characters). 2008-02-19 Martin Sebor STDCXX-736 * util/locale.cpp [_RWSTD_EDG_ECCP]: Suppressed EDG eccp error #450-D: the type "long long" is nonstandard, issued for uses of the type in the Linux pthreadtypes.h system header. * util/aliases.cpp [_RWSTD_EDG_ECCP]: Same. * util/memchk.cpp [_RWSTD_EDG_ECCP && !_WIN32](getpagesize): Declared. 2008-02-21 Farid Zaripov * util/path.cpp: Moved including of the system header files on top of the file, to get _XOPEN_SOURCE and _XOPEN_SOURCE_EXTENDED macros defined for all included headers. 2008-02-28 Farid Zaripov * util/display.cpp (print_header_plain): Increased NAME column width to reflect the changes in r620027. 2008-03-18 Martin Sebor STDCXX-281 * util/collate.cpp (preprocess_collate): Break out of a loop on EOF to avoid an infinite loop. 2008-03-18 Martin Sebor * util/collate.cpp: Updated year of copyright. 2008-03-20 Martin Sebor STDCXX-750 * util/aliases.cpp (get_installed_locales): Replaced malloc() with a new expression to avoid having to check the returned value and to silence HP cadvise warning #20200-D: Potential null pointer dereference is detected. Changed the type of locals to silence HP aCC 6.16 remark #4298-D: addition result could be truncated before cast to bigger sized type. 2008-03-31 Andrew Black STDCXX-426 * util/output.cpp (struct readback): Add convenience data structure for backwards file reading. (rbinit): Add method to initialize structure. (rbbof): Add method to check if structure points to the beginning of a file. (rbsync): Add method to synchronize the file handle the structure is built on to the structure. bgetc): Add method to retrieve a character from the file and move the structure one position closer to the start (rbscanf): Add methods to search for a string using the structure, possibly capturing an unsigned integer in the process. (check_test, check_compat_test): Alter to use above methods. 2008-04-03 Farid Zaripov * util/output.cpp (parse_output): Open file in binary mode (in text mode on Windows fread() returns value less than actually bytes read due to replacing "\r\n" to "\n"). 2008-04-04 Travis Vitek * util/output.cpp (parse_output): Revert recent change to open file in binary mode. 2008-04-07 Travis Vitek * util/output.cpp (parse_output): Open file in binary mode to avoid problems with line end translation in rbinit() and rbgetc() on windows. (check_test): Remove line end sequence from scan because file opened in binary mode will not have translated line ends. (check_example): Open example output file in binary mode to be consistent with other file that is used for diff. 2008-04-08 Andrew Black STDCXX-426 * util/output.cpp: Revert r643120, r644314, r645002, and r645445. The initial version of the patch for STDCXX-426 (r643120) resulted in failed processing of test output on windows. The subsequent changes were efforts to resolve this failure, but resulted either in failed example diffing on windows, or failed to resolve the observed misbehavior. 2008-04-09 Martin Sebor STDCXX-749 * util/time.cpp (parse_era): Checked the pointer returned from strtok() before dereferencing it and issued an error when it's null to silence HP aCC 6.16 potential null pointer dereference warning. 2008-04-11 Travis Vitek STDCXX-751 * util/locale_stub.cpp (main): Check pointer validity outside of strcpy argument list to avoid bogus cadvise warning. 2008-04-04 Farid Zaripov * tests/regress/23.vector.modifiers.stdcxx-495.cpp: Regression test deleted since STDCXX-495 issue is deferred until 4.3 release. 2008-03-30 Martin Sebor Merged rev 641091 from trunk. * tests/regress/18.limits.traps.stdcxx-624.cpp: Added a regression test for STDCXX-624. 2008-03-28 Martin Sebor Merged rev 642297 from trunk. * etc/config/acc.config (WARNFLAGS): Coalesced multiple warning options into a handful with multiple arguments each. 2008-03-28 Martin Sebor * bin/buildntest: Copied from the head of trunk. 2008-03-26 Farid Zaripov Merged r641324 from trunk. * tests/regress/21.string.append.stdcxx-438.cpp: Regression test for STDCXX-438 issue. 2008-03-25 Martin Sebor Merged rev 641116 from trunk. * tests/self/0.new.cpp (run_test): Disabled diagnostics issued by the replacement operator new and delete defined by the test driver in response to deliberate errors caused by this test. 2008-03-25 Farid Zaripov Merged r640859 from trunk. * etc/config/src/EXCEPTION_SPECIFICATION_ON_NEW.cpp: #included for size_t type. * etc/config/src/ICONV.cpp: Ditto. * etc/config/src/NEW_OFLOW_SAFE.cpp: Ditto. * etc/config/src/NEW_THROWS.cpp: Ditto. * etc/config/src/NEWLINE.cpp: Ditto. * etc/config/src/VA_LIST.cpp: Ditto. * etc/config/src/VSNPRINTF_RETURN.cpp: Ditto. 2008-03-25 Martin Sebor Merged rev 640851 from trunk. * tests/iostream/27.stringbuf.virtuals.cpp (test_seekoff): Added a link to LWG issue 563. 2008-03-24 Travis Vitek Merged rev 639495 from trunk 2008-03-20 Travis Vitek * tests/regress/23.set.stdcxx-216.cpp: Add regression test for issue caused by fix to STDCXX-216. * include/rw/_tree.cc: (insert): Ensure tree is not empty before comparing keys to avoid uninitialized memory read. 2008-03-18 Eric Lemings STDCXX-488 * etc/config/gcc.config: Add more link flags specifying install name and library versioning on Darwin (MacOS X) platforms. 2008-03-18 Farid Zaripov Merged r638433 from trunk * include/loc/_num_get.h (__rw_check_overflow_int): Corrected a typo. 2008-03-18 Farid Zaripov Merged r638382 from trunk with a fix for STDCXX-648 * include/fstream: Change 'class' keyword to 'struct' to hide MSVC warning C4099: 'std::ios_base::Init' : type name first seen using 'struct' now seen using 'class'. * include/istream [_RWSTD_NO_EXT_NUM_GET] (__rw_extract(istream&, short &)): New overload, implemented thus__rw_extract. [_RWSTD_NO_EXT_NUM_GET] (__rw_extract(istream&, int &)): New overload, implemented thus__rw_extract. * src/podarray.h (_C_length): Use inplace algorithm instead of char_traits::length when _RWSTD_NO_EXT_CHAR_TRAITS_PRIMARY macro is #defined. 2008-03-18 Farid Zaripov Merged r638369 and r638370 from trunk 2008-03-18 Farid Zaripov * include/loc/_num_get.cc (num_get::get): Code checking for overflow moved from here... * include/loc/num_get.h (_rw_check_overflow_{short|int}): ... to here. * include/rw/_iosfwd.h: Added new define _RWSTD_FMTFLAGS (used in _rw_check_overflow_{short|int}). 2008-03-18 Farid Zaripov * src/podarray.h (_C_length): New method to calculate the length of the pod array. (__rw_pod_array): Use _C_length() instead of char_traits<>::length(). (acquire): Ditto. (append): Ditto. (assign): Ditto. 2008-03-17 Farid Zaripov Merged r637897 from trunk. * include/string.cc (__replace_aux): Partially reverted changes for STDCXX-170 (r629550). * tests/regress/21.string.replace.stdcxx-170.cpp: Deleted regression test since STDCXX-170 issue deferred to 4.3 release. 2008-03-14 Farid Zaripov Merge changes from trunk. 2008-02-15 Farid Zaripov * tests/regress/22.locale.num.put.stdcxx-2.cpp: New regression test for STDCXX-2 issue. 2008-02-19 Farid Zaripov STDCXX-2 * src/num_put.cpp (__rw_fix_flt): Added new parameter: precision. Added workaround for STDCXX-2 issue. (__rw_put_num): Pass precision value in the __rw_fix_flt(). 2008-02-19 Farid Zaripov STDCXX-2 * src/num_put.cpp (__rw_fix_flt): Updated workaround for STDCXX-2 issue. Fixed detection of infinity (#INF), added detection of the quiet NAN (#IND). 2008-02-22 Farid Zaripov * src/memattr.cpp (__rw_memattr): Declare errno_save as unused to disable eccp warning #177-D "variable "errno_save" declared but not referenced". 2008-02-22 Farid Zaripov * src/time_put.cpp (__rw_get_timepunct): Remove const qualifier to disable eccp warning #191-D: "type qualifier is meaningless on cast type". 2008-02-22 Martin Sebor * time_put.cpp (__rw_get_timepunct): Removed unnecessary reinterpret_cast in a call to operator delete(). 2008-03-14 Farid Zaripov Merge r627644 from trunk. * src/podarray.h: Don't export internal template class __rw_pod_array<>. Use _RWSTD_INSTANTIATE() macro for consistency. [__GNUG__ >= 3]: Add #pragma to disable gcc error "ISO C++ forbids the use of 'extern' on explicit instantiations". * src/ti_podarray.cpp: #define two additional macro values to properly expand _RWSTD_INSTANTIATE() macro. 2008-03-14 Farid Zaripov Merge changes from trunk. 2008-02-08 Farid Zaripov STDCXX-375 * include/istream (std::getline, std::operator>>): Declaration moved from here ... * include/string (std::getline, std::operator>>): ... to here. * include/istream.cc (std::getline, std::operator>>): Added comment about declarations in 2008-02-12 Martin Sebor STDCXX-308 * include/fstream (~basic_filebuf): Caught and swallowed all exceptions. * include/fstream.cc (close): Closed file regardless of whether the call to overflow() or codecvt::unshift() fails or throws, as required by the resolution of LWG issue 622. 2008-02-13 Martin Sebor STDCXX-695 * include/loc/_money_get.cc (_C_get): Introduced a convenience typedef for size_t, changed the type of the local __sign to int and cast it to size_t to silence the pesky HP aCC 6 remark #4271-D: type conversion may lose sign. * include/loc/_messages.cc (do_get): Same. * include/sstream (str): Avoided pointer math to silence remark #4271. 2008-02-14 Farid Zaripov * include/rw/_defs.h: Move MSVC specific #pragma's from here... * include/rw/_config-msvc.h: ... to here. Disable warning C4661. 2008-02-14 Farid Zaripov * include/rw/_defs.h: #define new macro _RWSTD_TI_EXPORT to prevent MSVC warning C4910: "'__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation". * include/fstream: Use _RWSTD_TI_EXPORT instead of _RWSTD_EXPORT on an explicit instantiations. * include/istream: Ditto. * include/loc/_messages.h: Ditto. * include/loc/_money_get.h: Ditto. * include/loc/_money_put.h: Ditto. * include/loc/_moneypunct.h: Ditto. * include/loc/_num_get.h: Ditto. * include/loc/_num_put.h: Ditto. * include/loc/_numpunct.h: Ditto. * include/loc/_punct.h: Ditto. * include/loc/_time_get.h: Ditto. * include/loc/_time_put.h: Ditto. * include/ostream: Ditto. * include/rw/_basic_ios.h: Ditto. * include/rw/_ioinsert.h: Ditto. * include/rw/_mutex.h: Ditto. * include/sstream: Ditto. * include/streambuf: Ditto. * include/string: Ditto. 2008-02-22 Farid Zaripov STDCXX-375 * include/string: Declarations of the string inserter's and extractor's are moved to #included . * include/ostream: Definition of the inline string inserter moved to #included . * include/istream: Definition of the inline std::getline() moved to #included . * include/istream.cc: Definitions of the string extractor's are moved to rw/_stringio.cc file. * include/rw/_stringio.h: New header file with declarations of the string inserter's and extractor's. * include/rw/_stringio.cc: New file with definitions of the string extractors. * include/rw/_stringio.c: New file for compilers with implicit inclusion feature. * src/export/cpp: #included and . 2008-03-14 Farid Zaripov Merge r637079 from trunk with a fix for STDCXX-752 * util/gencat.cpp: Asserted precondition to silence HP aCC warning #20200-D: Potential null pointer dereference. 2008-03-12 Farid Zaripov Merged r634731 from trunk. 2008-01-18 Travis Vitek * examples/include/stocks.h: Change class name from FrankFurtStockXchange to FrankfurtStockXchange for correctness. * examples/tutorial/stocks.cpp (main): Ditto. 2008-01-18 Travis Vitek * examples/include/stocks.h [AIX, __osf__]: Update locale names so that example produces useful output. 2008-02-13 Martin Sebor * examples/tutoria/alg7.cpp (partial_sort_example): Removed redundant list ctor argument to get around an otherwise hard to silence HP aCC 6 remark #4271-D type conversion may lose sign. See STDCXX-727. (merge_example): Ditto 2008-02-14 Farid Zaripov * examples/manual/money_manip.cpp (put_money): Change the parameter type from long double to const long double& to prevent assigning the reference to the temporary value which is deleted when reference is used.. 2008-03-12 Farid Zaripov Merged r634731 from trunk. 2007-11-12 Martin Sebor * GNUmakefile.exm (RUNFLAGS): Bumped up virtual size limit to half a gig to prevent errors on HP-UX/IPF. 2007-11-12 Martin Sebor * GNUmakefile.exm (RUNFLAGS): Updated comment and moved it above the definition of the variable. 2008-02-28 Farid Zaripov * etc/config/gcc.config [CYGWIN]: Force .exe suffix for the executables. 2008-02-14 Farid Zaripov * etc/config/windows/configure.wsf (configure): Save the configuration info in global variable. Don't compile libraries before the compiling the tests, because the libraries could depend on some of the tests. (compileLibs): Function removed as unnecessary. (runExeTests): Build the libraries in common order with the tests. (checkDependencies): Don't skip the libraries. 2008-02-28 Farid Zaripov STDCXX-507 * etc/config/gcc.config [CYGWIN]: #define _RWSHARED in shared builds. * include/rw/_config-gcc.h [__CYGWIN__ && _RWSHARED]: disable exporting template instantiations in shared builds. 2008-03-07 Farid Zaripov * etc/config/src/nodbg.h: New header file with definition of the nodbg() to prevent GUI popups on Windows. * etc/config/src/DYNAMIC_CAST.cpp: Removed invoking of the _CrtSetReportMode(), using nodbg() instead. * etc/config/src/GLOBAL_BAD_ALLOC.cpp: Ditto. * etc/config/src/STD_BAD_ALLOC.cpp: Ditto. * etc/config/src/THREAD_SAFE_EXCEPTIONS.cpp: Ditto. * etc/config/src/NO_DBL_TRAPS.cpp: Invoke nodbg() before test to prevent the Dr.Watson popups (was detected on Borland Turbo C++). 2008-03-07 Farid Zaripov * etc/config/src/NEW_THROWS.cpp: Split test to two independent tests: NEW_THROWS and NEW_OFLOW_SAFE to prevent _RWSTD_NO_NEW_THROWS #defined when operator new() throws exception, but check for overflow is failed with Access Violation (as on the Borland Turbo C++). * etc/config/src/NEW_OFLOW_SAFE.cpp: New config test to check if operator new() checks the argument for overflow. 2008-03-04 Travis Vitek Merged rev 629291 from trunk 2008-02-19 Martin Sebor STDCXX-735 * tests/src/process.cpp (EINTR, SIGALRM): Defined to the known Linux value for EDG eccp in strict mode if not already #defined. 2008-03-03 Travis Vitek Merged rev 633233 from trunk. 2008-03-03 Travis Vitek STDCXX-665 * tests/localization/22.locale.messages.cpp [_RWSTD_OS_AIX] (run_test): Set LC__FASTMSG environment variable to false to work around a catopen() issue on AIX. 2008-02-26 Farid Zaripov Merged r629828 from trunk with a fix for STDCXX-738 * etc/config/src/INFINITY.cpp: #including the "float_defs.h" instead of to #define FLT_MIN, DBL_MIN, LDBL_MIN constants on EDG eccp. 2008-02-26 Farid Zaripov Merged r627616 from trunk. * etc/config/src/extern_function_template_imp.h: New header file to check the extern function templates. * etc/config/src/extern_function_template_imp.cpp: Removed definitions of struct S<> and foobar<>(), #included extern_function_template_imp.h. * etc/config/src/EXTERN_FUNCTION_TEMPLATE.cpp: Ditto. 2008-02-26 Farid Zaripov Merged r629825 from trunk. * etc/config/src/float_defs.h: New file with a definitions of the floating point constants. * etc/config/src/FLOAT.cpp: #including the "float_defs.h" instead of defining the floating point constants in file. * etc/config/src/LDBL_PRINTF_PREFIX.cpp: Ditto. Merged r629900 from trunk. * etc/config/src/FLOAT.cpp: Updated comment, erroneously changed in r629825. 2008-02-22 Farid Zaripov Merged r629550 from trunk with a fix for STDCXX-170 * include/string.cc (__rw_replace): Use temporary string object when __first2 and __last2 are input iterators to satisfy string exception safety requirements (string should be unchanged if an exception occurs during replacing). (__rw_replace_aux): Correctly replacing characters in the case when [__first2, __last2) range belongs to the self string. 2008-02-22 Farid Zaripov Merged r629551 from trunk. * tests/regress/21.string.replace.stdcxx-170.cpp: New regression test for STDCXX-170 issue. 2008-02-21 Farid Zaripov Merged r629812 from trunk with a fix for STDCXX-737 * etc/config/GNUmakefile.cfg: Check for the LDOPTS dependences and setup LOPT variable when building the executable target (restored r627618 after fixing bug). 2008-02-14 Travis Vitek Merged rev 619587 from trunk. 2008-02-07 Travis Vitek STDCXX-249 * include/istream.cc (operator>>): Read stream data in blocks where possible for efficiency. * include/streambuf: Add operator>> as friend for access to protected member functions. 2008-02-11 Travis Vitek Merged rev 604073 from trunk. 2007-12-11 Travis Vitek STDCXX-673 * etc/config/src/LIMITS.cpp (main): Always use signed types for definition of _RWSTD_INT[8,16,32,64]_T macros. 2008-02-09 Farid Zaripov * include/exception: Swapped member declarations for ICC/Linux and MSVC | ICC/Windows to simplify the preprocessor condition. * src/exception.cpp: Ditto. Use MSVC code on ICC/Windows. 2008-02-09 Farid Zaripov STDCXX-720 * tests/regress/21.string.io.stdcxx-250.cpp: Give name to the unnamed struct to workaround bug of the ICC/Windows. * tests/regress/27.filebuf.virtuals.stdcxx-522.cpp: Ditto. 2008-02-08 Farid Zaripov * etc/config/windows/icc-10.1.config: New config file for 32-bit ICC 10.1. * etc/config/windows/icc-10.1-x64.config: New config file for 64-bit ICC 10.1. 2008-02-08 Farid Zaripov Merged r619904 from trunk with a fix for STDCXX-548. * src/punct.h: New header file with declaration of the __rw_get_stdio_fmat(). * src/num_get.cpp: #included punct.h, removed declaration of the __rw_get_stdio_fmat(). * src/num_put.cpp: Ditto. * src/punct.cpp: #included punct.h, use _RWSTD_STREAMSIZE instead of _STD::streamsize. 2008-02-06 Farid Zaripov STDCXX-685 * etc/config/windows/configure.wsf (makeLibrary): Use '\' instead of '/' in path for consistency. 2008-02-05 Farid Zaripov STDCXX-698 * etc/config/src/headers.inc: Removed duplicate of the wcstod. 2008-02-04 Travis Vitek Merged rev 618385 from trunk. STDCXX-625 * tests/src/process.cpp (rw_waitpid): Use sigaction() instead of signal() where available. 2008-02-02 Travis Vitek Merged rev 617841 from trunk. * tests/regress/21.string.stdcxx-231.cpp: Fix compile error. 2008-02-01 Martin Sebor Merged rev 616976 from trunk. 2008-01-30 Martin Sebor STDCXX-705 * tests/self/0.printf.cpp [_RWSTD_OS_HP_UX](bad_address): Used (0 - 32) as an invalid address. 2008-01-31 Travis Vitek Merge 617300 from trunk. * include/istream.cc: Call clear() instead of erase() to avoid unnecessary overhead and for consistency. 2008-01-31 Travis Vitek Merged rev 617251 and 617276 from trunk. 2008-01-31 Travis Vitek STDCXX-231 * include/string (clear): Avoid deallocating string body unless necessary. * include/string.cc (replace): Ditto. * include/istream.cc (getline): Call clear () instead of erase() to avoid unnecessary overhead. 2008-01-31 Travis Vitek * tests/regress/21.string.stdcxx-231.cpp: Added regression test for STDCXX-231. 2008-01-30 Travis Vitek Merged rev 616673 with a fix for STDCXX-216 fron trunk. * include/rw/_tree.cc (insert): Optimize insertion when hint iterator is not begin() or end(). Add some much needed documentation. 2008-01-29 Travis Vitek Merged rev 615419 with a fix for STDCXX-573 from trunk. * etc/config/makefile.rules: Use WITH_PURIFY or WITH_CADVISE to enable or disable purify and cadvise tools. * GNUmakefile: Document new parameters and cache them in makefile.in. 2008-01-29 Farid Zaripov * include/rw/_config-msvc.h: Disable compiler warning C4231. 2008-01-28 Farid Zaripov STDCXX-712 * tests/utilities/20.temp.buffer.cpp [_MSC_VER]: Disabled "Invalid allocation size: 4294967292 bytes" message box from malloc(). 2008-01-24 Farid Zaripov * tests/regress/21.string.stdcxx-162.cpp: Corrected name of the file in comment. 2008-01-24 Farid Zaripov * include/rw/_allocator.h [!_RWSTD_ALLOCATOR] (address): Corrected type in reinterpret_cast expression. 2008-01-24 Farid Zaripov * include/string.cc (replace): Use copy () method instead of move (). 2008-01-24 Farid Zaripov * include/string.cc: Corrected formatting. 2008-01-24 Farid Zaripov * include/rw/_config-msvcrt.h [_MSC_VER <= 1300]: #define _RWSTD_LONG_LONG as __int64 on MSVC 7.0. 2008-01-23 Martin Sebor Merged rev 614760 with a fix for STDCXX-704 from trunk. * driver.cpp [__EDG__](RW_TEST_COMPILER): Moved conditional #definition last to avoid preempting the more-specific compiler macro. [__HP_aCC](RW_TEST_COMPILER): Correctly detected HP aCC 6 even though it uses the EDG front end and added the version of EDG eccp to the definition of the macro. 2008-01-22 Farid Zaripov * include/rw/_mutex.h: Remove unused declaration of the InterlockedXXX() Win32 API functions. * etc/config/src/ATOMIC_OPS.cpp: Delete unused configuration test. 2008-01-16 Martin Sebor Merged rev 611016 and 611019 from trunk. 2008-01-10 Martin Sebor * 27.ostream.unformatted.stdcxx-626.cpp: Added regression test for STDCXX-626. 2008-01-10 Martin Sebor STDCXX-626 * ostream.cc (flush): Implemeneted proposed resolution of LWG issue 581 and reverted the resolution of issue 60 wrt ostream ::flush(). 2008-01-16 Farid Zaripov * include/rw/_mutex.h: Use intrinsic interlocked functions on MSVC 7.1 and ICC. Declare the interlocked functions instead of #including . 2008-01-16 Farid Zaripov * include/rw/_config-msvcrt.h: Don't #define _RWSTD_NO_LONG_LONG as __int64 if long long type is supported by compiler. 2008-01-12 William A. Rowe, Jr. * /repos/asf/incubator/stdcxx: stdcxx has graduated to a TLP, moved svn to... * /repos/asf/stdcxx: ...here. 2008-01-11 Travis Vitek Merged rev 611307 from trunk with implementation of STDCXX-577 * examples/include/stocks.h: Removed StockXchange destructor implementation. * examples/tutorial/stocks.cpp: Add StockXchange destructor that properly deallocates memory. (main): Avoid allocation of facets when the locale that uses them is not available. Change Xchange to hold pair values to avoid having to deallocate those pairs explicitly. Cache the locale initially imbued on stream, then restore it to ensure that facets are deallocated. 2008-01-11 Travis Vitek Merged rev 610576 from trunk with implementation of STDCXX-605. * examples/tutorial/dynatype.cpp: Add overloaded method that discards const to avoid looking in wrong map when non-const conversion operator is used with a const type. (main): Display text and converted value in two separate statements to ensure output is generated the same on all platforms. Add a return 0 for correctness. * examples/tutorial/out/dynatype.out: Update output file to match expected output format. 2008-01-06 Martin Sebor Merged revs 608712 and 608713 from trunk: 2008-01-03 Martin Sebor STDCXX-195 * include/ansi/cstdio [_RWSTD_STRICT_ANSI] (fpos_t, remove, rename, tmpfile, tmpnam, fclose, fflush, fopen, freopen, setbuf, setvbuf, fprintf, fscanf, printf, scanf, sprintf, sscanf, vfprintf, vprintf, vsprintf, fgetc, fgets, fputc, fputs, getc, getchar, gets, putc, putchar, puts, ungetc, fread, fwrite, fgetpos, fseek, fsetpos, ftell, rewind, clearerr, feof, ferror, perror): Undefined shadow macros in strict mode (only). 2008-01-03 Martin Sebor * tests/regress/27.cstdio.stdcxx-195.cpp: New regression test for STDCXX-195. 2007-12-19 Travis Vitek Merged rev 605744 with a tweak for STDCXX-240 from trunk. * include/rw/_config-xlc.h [__IBMCPP__]: Conditionally disable exception support if command line option is set and the compiler is version 7.0 or later. 2007-12-19 Farid Zaripov * 21.string.io.stdcxx-250.cpp: Regression test for STDCXX-250 issue. 2007-12-19 Farid Zaripov STDCXX-250 * istream.cc (operator>>): Move counter __i out from the try/catch block and rename to __gcount for consistency with getline(). Increment __gcount after sbumpc() but before sgetc() to correctly reflect the number of extracted characters. Set ios_base::failbit if no characters extracted. 2007-12-19 Farid Zaripov STDCXX-226 * include/rw/_defs.h (_RWSTD_RATIO_DIVIDER): New macro defined the value to divide the _RWSTD_{NEW|STRING}_CAPACITY_RATIO. (_RWSTD_NEW_CAPACITY_RATIO): The value with floating point replaced to integer value using multiplication with _RWSTD_RATIO_DIVIDER. (_RWSTD_STRING_CAPACITY_RATIO): Ditto. * include/rw/_specialized.h (__rw_new_capacity): Floating point operations replaced to integer operations. * include/sstream (_C_grow): Ditto. * include/string (__rw_new_capacity): Ditto. 2007-12-19 Farid Zaripov STDCXX-585 * etc/config/src/BAD_ALLOC_ASSIGNMENT.cpp: Don't define ~bad_alloc() when testing the presence of the other members to avoid multiply defined sybmol linker errors. 2007-12-18 Travis Vitek Merged rev 605368 with a fix for STDCXX-240 from trunk. * include/rw/_config-acc.h: Conditionally disable exception support if appropriate command line option is set. * include/rw/_config-deccxx.h: Ditto. * include/rw/_config-eccp.h: Ditto. * include/rw/_config-gcc.h: Ditto. * include/rw/_config-icc.h: Ditto. * include/rw/_config-mipspro.h: Ditto. * include/rw/_config-xlc.h: Ditto. 2007-12-13 Martin Sebor Merged revs 601922, 601927, and 601935 from trunk: 2007-12-06 Travis Vitek STDCXX-443 * etc/config/vacpp.config: Remove -Q compile flag for AIX optimized builds to be consistent with IBM documentation. 2007-12-05 Travis Vitek STDCXX-676 * tests/locale/22.locale.time.put.cpp [_MSC_VER] (rw_strftime): Avoid passing unsupported format specifiers to strftime(). 2007-12-04 Travis Vitek STDCXX-603 * include/valarray (apply): Avoid use of typedef in function type to avoid linker error with VisualAge C++. 2007-12-12 Travis Vitek Merged rev 604038 with a fix for STDCXX-524 from trunk. * tests/localization/22.locale.codecvt.length.cpp (create_locale): Check return code from rw_snprintf(). * tests/localization/22.locale.codecvt.out.cpp (create_locale): Ditto. * tests/localization/22.locale.time.get.cpp (make_LC_TIME): Ditto. Use rw_snprintf() instead of sprintf(), use larger fixed buffer sizes. * tests/localization/22.locale.time.put.cpp (make_LC_TIME): Ditto. * tests/src/locale.cpp (): Ditto. 2007-12-11 Martin Sebor Merged in rev 602770 with a fix for STDCXX-650 from trunk. * etc/config/makefile.rules: Duplicated rules for sources matching "*.out.cpp" and objects matching "*.out.o" (Only the latter appears necessary). 2007-12-10 Farid Zaripov * etc/config/windows/build.wsf (DiffTime): New function to get the difference between two times. (TimeEcho): Modified to print time similat to the unix script. (build): Print relative time per each build step instead of printing the timestamp. 2007-11-29 Travis Vitek Merged rev 601040 with fix for STDCXX-604 from trunk. * tests/regress/23.bitset.cons.stdcxx-297.cpp (main): Avoid passing temporary to constructor to work around ICE with IBM VA C++. 2007-11-27 Martin Sebor Merged rev 594730 from trunk with the implementation of STDCXX-623. * util/target.h (target_status): Changed the type of user, system, and wall clock time counters from clock_t* to plain clock_t and renamed to usr_time, sys_time, and wall_time, respectively. * util/exec.cpp (calculate_usage, exec_file): Eliminated static locals and instead directly used the target_status object passed in by caller. (exec_file): * util/display.cpp (print_status_plain, print_status_verbose): Checked for times equal to -1 as an indicator of validity. (print_footer_plain): Printed cumulative times for all targets. * util/runall.cpp (run_target): Accumulated target times. 2007-11-27 Farid Zaripov * etc/config/windows/build.wsf (TimeEcho): Print timestamp with the format identical to unix format. 2007-11-27 Farid Zaripov * include/streambuf (imbue): Removed name of the unused parameter. 2007-11-23 Farid Zaripov * 27.streambuf.imbue.stdcxx-307.cpp (main): Added missing "return 0". 2007-11-23 Martin Sebor * 27.streambuf.imbue.stdcxx-307.cpp: New regression test for STDCXX-307. 2007-11-23 Farid Zaripov STDCXX-307 * streambuf (imbue): Code storing the locale moved from here... (pubimbue): ... to here. 2007-11-21 Farid Zaripov STDCXX-671 * include/loc/_convenience.h: _V3_USE_FACET macro renamed to _RWSTD_USE_FACET. * include/loc/_messages.cc: Ditto. * include/loc/_money_get.cc: Ditto. * include/loc/_money_put.cc: Ditto. * include/loc/_num_get.cc: Ditto. * include/loc/_num_put.cc: Ditto. * include/loc/_punct.cc: Ditto. * include/loc/_time_get.cc: Ditto. * include/loc/_time_put.cc: Ditto. * include/rw/_defs.h: Ditto. * tests/localization/22.locale.moneypunct.cpp: Ditto. 2007-11-21 Farid Zaripov STDCXX-637 * include/ansi/cwchar [_RWSTD_STRICT_ANSI]: #undefine getwc and putwc masking macros. * tests/strings/21.cwchar.cpp (test_macros): Issue rw_warn() instead of rw_assert() in non strict ANSI mode. (test_functions): Issue rw_warn() instead of rw_assert(). 2007-11-22 Farid Zaripov STDCXX-663 * rw/_config_msvcrt.h: #define _RWSTD_NO_WCSTOK and _RWSTD_NO_WCSTOK_IN_LIBC macros since the MSVC has the non-standard prototype of the wcstok(). * ansi/cwchar [_MSC_VER >= 1400]: Define inline wcstok() function using wcstok_s(). #undefine _RWSTD_NO_WCSTOK and _RWSTD_NO_WCSTOK_IN_LIBC macros. 2007-11-22 Farid Zaripov * 26.valarray.cassign.cpp (run_test): Corrected condition in preprocessor directive. 2007-11-16 Travis Vitek STDCXX-649 * printf.cpp (_rw_fmtinteger): Implement `z' format specifier support to avoid issues on platforms where size_t is not the same size as int. 2007-11-20 Travis Vitek STDCXX-607 * messages.cpp (__rw_cat_close): Put lock guard into local scope to avoid recursive acquire on error. 2007-11-21 Farid Zaripov STDCXX-594 * include/rw/_defs.h (_V3_LOCALE): Replaced the obsolete macro with _STD. * include/loc/_locale.h: Ditto. * include/loc/_codecvt.cc: Ditto. * include/loc/_codecvt.h: Ditto. * include/loc/_collate.cc: Ditto. * include/loc/_collate.h: Ditto. * include/loc/_convenience.h: Ditto. * include/loc/_ctype.cc: Ditto. * include/loc/_ctype.h: Ditto. * include/loc/_messages.cc: Ditto. * include/loc/_messages.h: Ditto. * include/loc/_money_get.cc: Ditto. * include/loc/_money_put.cc: Ditto. * include/loc/_moneypunct.cc: Ditto. * include/loc/_moneypunct.h: Ditto. * include/loc/_num_get.cc: Ditto. * include/loc/_num_put.cc: Ditto. * include/loc/_numpunct.cc: Ditto. * include/loc/_numpunct.h: Ditto. * include/loc/_time_get.cc: Ditto. * include/loc/_time_put.cc: Ditto. * src/use_facet.h: Ditto. 2007-11-21 Farid Zaripov * terminate.h: Removed eventually inserted duplicate lines. 2007-11-21 Farid Zaripov * extern_template_imp.cpp: #include replaced to #include "config.h" for consistency. * LIMITS.cpp: #include "config.h" placed after the ASL header. 2007-11-21 Farid Zaripov STDCXX-558 * BAD_ALLOC_COPY_CTOR.cpp: Removed unnecessary #include "config.h". * BAD_ALLOC_DEFAULT_CTOR.cpp: Ditto. * BAD_ALLOC_DTOR.cpp: Ditto. * BAD_ALLOC_WHAT.cpp: Ditto. * BAD_CAST_ASSIGNMENT.cpp: Ditto. * BAD_CAST_COPY_CTOR.cpp: Ditto. * BAD_CAST_DEFAULT_CTOR.cpp: Ditto. * BAD_CAST_DTOR.cpp: Ditto. * BAD_CAST_WHAT.cpp: Ditto. * BAD_EXCEPTION_ASSIGNMENT.cpp: Ditto. * BAD_EXCEPTION_COPY_CTOR.cpp: Ditto. * BAD_EXCEPTION_DEFAULT_CTOR.cpp: Ditto. * BAD_EXCEPTION_DTOR.cpp: Ditto. * BAD_EXCEPTION_WHAT.cpp: Ditto. * BAD_TYPEID_ASSIGNMENT.cpp: Ditto. * BAD_TYPEID_COPY_CTOR.cpp: Ditto. * BAD_TYPEID_DEFAULT_CTOR.cpp: Ditto. * BAD_TYPEID_DTOR.cpp: Ditto. * BAD_TYPEID_WHAT.cpp: Ditto. * BOOL.cpp: Ditto. * CLASS_PARTIAL_SPEC.cpp: Ditto. * COLLAPSE_STATIC_LOCALS.cpp: Ditto. * COLLAPSE_TEMPLATE_LOCALS.cpp: Ditto. * COLLAPSE_TEMPLATE_STATICS.cpp: Ditto. * CTYPE_BITS.cpp: Ditto. * DEFAULT_TEMPLATE_ARGS.cpp: Ditto. * DEPRECATED_LIBC_IN_STD.cpp: Ditto. * EXCEPTION_ASSIGNMENT.cpp: Ditto. * EXCEPTION_COPY_CTOR.cpp: Ditto. * EXCEPTION_DEFAULT_CTOR.cpp: Ditto. * EXCEPTION_DTOR.cpp: Ditto. * EXCEPTION_WHAT.cpp: Ditto. * EXPLICIT.cpp: Ditto. * EXPLICIT_ARG.cpp: Ditto. * EXPLICIT_FUNC_INSTANTIATION.cpp: Ditto. * EXTERN_FUNCTION_TEMPLATE.cpp: Ditto. * EXTERN_INLINE.cpp: Ditto. * EXTERN_TEMPLATE.cpp: Ditto. * FUNCTION_TRY_BLOCK.cpp: Ditto. * GLOBAL_TYPE_INFO.cpp: Ditto. * ICONV.cpp: Ditto. * lib_exceptions.lib.cpp: Ditto. * LLONG_PRINTF_PREFIX.cpp: Ditto. * LONG_DOUBLE.cpp: Ditto. * MUNMAP.cpp: Ditto. * NATIVE_WCHAR_T.cpp: Ditto. * NEW_CLASS_TEMPLATE_SYNTAX.cpp: Ditto. * NEWLINE.cpp: Ditto. * NL_TYPES_H.cpp: Ditto. * NO_DBL_TRAPS.cpp: Ditto. * NO_INT_TRAPS.cpp: Ditto. * STD_TERMINATE.cpp: Ditto. 2007-11-21 Farid Zaripov STDCXX-557 * terminate.h: New header file with a definition of the std::terminate(). * BAD_ALLOC_ASSIGNMENT.cpp (terminate): Function removed, #included "terminate.h" instead. * DYNAMIC_CAST.cpp: Ditto. * EXCEPTIONS.cpp: Ditto. * FLOAT.cpp: Ditto. * GLOBAL_BAD_ALLOC.cpp: Ditto. * GLOBAL_BAD_CAST.cpp: Ditto. * GLOBAL_BAD_EXCEPTION.cpp: Ditto. * GLOBAL_BAD_TYPEID.cpp: Ditto. * GLOBAL_EXCEPTION.cpp: Ditto. * GLOBAL_UNCAUGHT_EXCEPTION.cpp: Ditto. * LIB_EXCEPTIONS.cpp: Ditto. * LIMITS.cpp: Ditto. * NEW_THROWS.cpp: Ditto. * OPERATOR_DELETE_ARRAY_PLACEMENT.cpp: Ditto. * OPERATOR_DELETE_PLACEMENT.cpp: Ditto. * OPERATOR_NEW_ARRAY_PLACEMENT.cpp: Ditto. * OPERATOR_NEW_PLACEMENT.cpp: Ditto. * STD_BAD_ALLOC.cpp: Ditto. * STD_BAD_CAST.cpp: Ditto. * STD_BAD_EXCEPTION.cpp: Ditto. * STD_BAD_TYPEID.cpp: Ditto. * STD_EXCEPTION.cpp: Ditto. * STD_UNCAUGHT_EXCEPTION.cpp: Ditto. * TYPE_INFO_DTOR.cpp: Ditto. 2007-11-20 Farid Zaripov * BAD_ALLOC_ASSIGNMENT.cpp: Corrected __GNUG__ macro (was GNUG__). 2007-11-20 Martin Sebor Merged rev 596704 from trunk. * rw_locale.h (rw_set_locale_root): Updated comments. 2007-11-19 Farid Zaripov Merged r596354 from trunk with a fix for STDCXX-669. * 20.auto.ptr.cpp (test_auto_ptr): Worked around bug in MSVC 7.x. 2007-11-19 Farid Zaripov * 22.locale.ctype.cpp (run_test<>): The compile time checks moved to test_libstd(); The function run_test<>() removed; The test_libstd() and test_libc() functions are invoked from non-template run_test() to invoke them in the following order: test_libc(), test_libc(), test_libstd(), test_libstd(). (write_string): Function removed. (create_locale): Function removed. The locale source character array moved from here ... (test_libstd): ... to here. Use rw_create_locale() instead of create_locale(). 2007-11-19 Farid Zaripov * 22.locale.ctype.cpp (test_libstd_toupper_tolower): Added braces around multiline TEST macro. (test_libstd_mask): Corrected '\xa0' value to '\xa2'. 2007-11-19 Farid Zaripov * 22.locale.ctype.is.cpp (run_test<>): The compile time checks moved to test_libstd(); The function run_test<>() removed; The test_libstd() and test_libc() functions are invoked from non-template run_test() to invoke them in the following order: test_libc(), test_libc(), test_libstd(), test_libstd(). 2007-11-19 Farid Zaripov Merged r596316 from trunk. * deque (_C_bufsize): Use _RWSTD_NEW_CAPACITY macro instead of __rw_new_capacity(). * list.cc (_C_add_buffer): Ditto. * rw/_tree.cc (_C_add_new_buffer): Ditto. * vector.cc (_C_realloc): Ditto. 2007-11-15 Farid Zaripov * examples/tutorial/icecream.cpp: define eventComparator::operator() as a const member. * doc/stdlibug/11-3.html: Ditto. 2007-11-14 Farid Zaripov * stdlibug/11-3.html: Updated example source according to changes in r594966. 2007-11-14 Farid Zaripov STDCXX-661 * tutorial/icecream.cpp (class event): Removed unused operator>(). (eventComparator): Defined as separate struct instead of typedef std::greater<>. * tutorial/out/icecream.out: Updated .out file to reflect the changes above. 2007-11-12 Farid Zaripov * locale.cpp [_WIN32]: Added missing space in LS_1 command. 2007-11-12 Farid Zaripov STDCXX-662 * 17.names.cpp [_WIN32 && 1400 <= _MSC_VER]: Added #include because it will be included by the library. 2007-11-09 Farid Zaripov STDCXX-659 * 22.locale.moneypunct.cpp (check_moneypunct): Set all categories instead setting the only monetary category. 2007-11-09 Farid Zaripov STDCXX-658 * 27.istream.fmat.arith.cpp (test_llong): Corrected typename "long" to "long long". (test_ullong): Corrected typename "long long" to "unsigned long long". 2007-11-08 Martin Sebor Merged rev 593361 from trunk with a workaround for STDCXX-616. * 20.auto.ptr.cpp (test_auto_ptr_void): Worked around HP aCC bugs. 2007-11-08 Farid Zaripov * exec.cpp [_WIN32]: Added STATUS_HEAP_CORRUPTION to the nt_status_map (detected on Vista). 2007-11-07 Martin Sebor Merged rev 593006 from trunk. STDCXX-654 * 18.setjmp.cpp (run_test): Qualified a local variable with volatile to work around what looks like a gcc optimized bug. 2007-11-07 Martin Sebor Merged rev 592995 from trunk. STDCXX-651 * 23.vector.stdcxx-611.cpp: Avoided calling the test function in a compile-only test. STDCXX-652 * 23.vector.stdcxx-611.cpp: Explicitly initialized a const array of objects of user-defined type with no default ctor to avoid compiler errors. 2007-11-07 Martin Sebor Merged rev 592890 from trunk. * NOTICE.txt: Added HP copyright from src/parisc/atomic.s. 2007-11-02 Farid Zaripov * build.wsf (build): The order of running examples, tests and locales on Windows arranged to the order of running on UNIX (locales, tests, examples). 2007-11-01 Farid Zaripov STDCXX-634 * 25.random.shuffle.cpp (test_random_shuffle): Corrected data in the result array. 2007-10-31 Travis Vitek STDCXX-625 * process.cpp (sig_handler): Don't re-register for signal from within signal handler to avoid stack overflow on HP-UX and AIX. (rw_waitpid): Set and restore signal handler inside loop so we can avoid using the signal handler to do it. 2007-10-31 Farid Zaripov * projectdef.js (projectCreateVCProject): Generate source pdb in OutDir only for static libraries. For the other projects generate the binary pdb in OutDir, and source pdb in IntDir. 2007-10-30 Martin Sebor STDCXX-414 * util.cpp (rw_signal): Guarded with _RWSTD_EDG_ECCP instead of _RWSTD_NO_PURE_C_HEADERS as done in rev 588734 since the latter is #defined with other compilers including Sun C++ on Linux and it's on Linux where rw_signal() must be implemented in terms of sigaction() to do what we want. 2007-10-30 Martin Sebor * CTYPE_BITS.cpp (main): Removed a stray '=' from test output. 2007-10-30 Farid Zaripov * build.wsf (TimeEcho): New function to print the message with timestamp. Use TimeEcho() for the printing messages on every build stage. 2007-10-30 Farid Zaripov * exec.cpp [!_WIN32 && !_RWSTD_NO_PURE_C_HEADERS] (kill, fdopen): Skip the functions declaration on Windows. 2007-10-30 Farid Zaripov Merged r581667 from trunk * 22.locale.moneypunct.cpp (convert): Save the name of the original locale using std::string object. Use return instead of break to avoid restoring the original locale twice. 2007-10-30 Farid Zaripov Merged r581946 from trunk with a fix for STDCXX-575 * 22.locale.cons.mt.cpp [_MSC_VER] (test_ctors): If cat == std::locale::messages, compare combined locale with first because of the MSVC doesn't support LC_MESSAGES constant. 2007-10-30 Farid Zaripov Merged r585460 from trunk with a fix for STDCXX-601 * 20.auto.ptr (test_auto_ptr): Ensure allocated object is value-initialized to avoid uninitialized memory read error. 2007-10-30 Farid Zaripov Merged r583398 from trunk with a fix for STDCXX-582 * 0.printf.cpp (test_errno): Deallocate memory allocated automatically by rw_snprintfa(). 2007-10-30 Farid Zaripov Merged r585143 from trunk with a fix for STDCXX-109 * etc/config/makefile.rules ($(CATFILE)): Make failure to execute the gencat utility non-fatal. 2007-10-30 Farid Zaripov Merged r583840 from trunk * configure.wsf (configure): Removed IncludeDir command line option. * projects.js (CreateProjectsDefs): Removed /IncludeDir option from command line of the configure.wsf script. 2007-10-30 Farid Zaripov Merged r580982 from trunk * time_put.cpp (__rw_get_date_fmat): Convert char argument of isspace(), isdigit(), ispunct() to unsigned char. (__rw_get_time_fmat): Ditto. 2007-10-30 Farid Zaripov Merged /tests/regress/ from trunk * 21.string.io.stdcxx-206.cpp: Regression test for STDCXX-206. * 26.valarray.members.stdcxx-313.cpp: Regression test for STDCXX-313. * 26.valarray.members.stdcxx-318.cpp: Regression test for STDCXX-318. * 26.valarray.sub.stdcxx-224.cpp: Regression test for STDCXX-224. * 26.valarray.unary.stdcxx-314.cpp: Regression test for STDCXX-314. * 27.stringbuf.xsputn.stdcxx-576.cpp: Regression test for STDCXX-576. 2007-10-30 Farid Zaripov Merged r580981 from trunk * locale.cpp [_WIN32] (EnumLocales): New function to enumerate system locales. (print_locale_names): Obtain list of system locales if RWSTD_LOCALE_ROOT environment variable is not defined. 2007-10-30 Farid Zaripov Merged r581626 from trunk * display.cpp (print_status_plain): Use float arithmetic when calculating the percent of the failed assertions to avoid overflow of the unsigned int type. 2007-10-30 Farid Zaripov * 21.string.swap.cpp: Corrected $Id line. 2007-10-30 Farid Zaripov * etc/config/src/DAYLIGHT.cpp: Updated svn:eol-style and svn:keywords properties. * examples/manual/insert_wchar.cpp: Ditto. * examples/manual/mbsrtowcs.cpp: Ditto. * include/complex.c: Ditto. * include/complex.cc: Ditto. * src/logic_error.cpp: Ditto. * tests/strings/21.string.cons.mt.cpp: Ditto. * util/locale_stub.cpp: Ditto. 2007-10-30 Farid Zaripov STDCXX-621 * examples/manual/binary_search.cpp: Updated ASL header. * examples/manual/merge.cpp: Ditto. * examples/manual/reverse_iterator.cpp: Ditto. * include/fstream: Ditto. * include/iosfwd: Ditto. * include/loc/_money_get.h: Ditto. * include/loc/_money_put.h: Ditto. * include/loc/_num_get.h: Ditto. * include/loc/_time_get.h: Ditto. * include/loc/_time_put.h: Ditto. * include/ostream: Ditto. * include/rw/_basic_ios.h: Ditto. * include/rw/_config-acc.h: Ditto. * include/rw/_config-deccxx.h: Ditto. * include/rw/_config-icc.h: Ditto. * include/rw/_config-mipspro.h: Ditto. * include/rw/_config-sunpro.h: Ditto. * include/rw/_config-xlc.h: Ditto. * include/rw/_ioinsert.cc: Ditto. * include/rw/_ioinsert.h: Ditto. * include/rw/_ioiter.h: Ditto. * include/rw/_iterator.h: Ditto. * include/rw/_mutex.h: Ditto. * include/rw/_streamiter.h: Ditto. * include/stack: Ditto. * include/streambuf: Ditto. * include/streambuf.cc: Ditto. * include/tr1/_smartptr.h: Ditto. * include/tr1/cstdint: Ditto. * include/tr1/stdint.h: Ditto. * LICENSE.txt: Ditto. * src/bitset.cpp: Ditto. * src/instance.cpp: Ditto. * src/locale_body.cpp: Ditto. * src/ti_filebuf.cpp: Ditto. * src/ti_wfilebuf.cpp: Ditto. * tests/include/any.h: Ditto. * tests/include/rw_alloc.h: Ditto. * tests/include/rw_ctype.h: Ditto. * tests/include/rw_exception.h: Ditto. * tests/include/rw_new.h: Ditto. * tests/include/rw_streambuf.h: Ditto. * tests/iostream/27.filebuf.codecvt.cpp: Ditto. * tests/iostream/27.istream.unformatted.get.cpp: Ditto. * tests/localization/22.locale.time.put.cpp: Ditto. * tests/self/0.alloc.cpp: Ditto. * tests/self/0.char.cpp: Ditto. * tests/self/0.cmdopts.cpp: Ditto. * tests/self/0.ctype.cpp: Ditto. * tests/src/alarm.cpp: Ditto. * tests/src/char.cpp: Ditto. * tests/src/cmdopt.cpp: Ditto. * tests/src/ctype.cpp: Ditto. * tests/src/fmt_defs.h: Ditto. * tests/strings/21.string.capacity.cpp: Ditto. * tests/strings/21.string.compare.cpp: Ditto. * tests/strings/21.string.copy.cpp: Ditto. * tests/strings/21.string.erase.cpp: Ditto. * tests/strings/21.string.find.cpp: Ditto. * tests/strings/21.string.find.first.of.cpp: Ditto. * tests/strings/21.string.find.last.not.of.cpp: Ditto. * tests/strings/21.string.find.last.of.cpp: Ditto. * tests/strings/21.string.io.cpp: Ditto. * tests/strings/21.string.iterators.cpp: Ditto. * tests/strings/21.string.op.plus.cpp: Ditto. * tests/strings/21.string.op.plus.equal.cpp: Ditto. * tests/strings/21.string.operators.cpp: Ditto. * tests/strings/21.string.replace.cpp: Ditto. * tests/strings/21.string.rfind.cpp: Ditto. * tests/strings/21.string.substr.cpp: Ditto. * tests/strings/21.string.swap.cpp: Ditto. * tests/tr1.c99/8.cstdint.cpp: Ditto. * tests/utilities/20.auto.ptr.cpp: Ditto. * tests/utilities/20.specialized.cpp: Ditto. 2007-10-29 Martin Sebor STDCXX-624 * etc/config/src/NO_INT_TRAPS.cpp (main): Worked even harder to foil optimizers and trigger a trap (such as SIGFPE) for integer arithmetic. 2007-10-29 Martin Sebor * _config.h (_RWSTD_VER): Bumped up micro version number to 1. (_RWSTD_VER_STR): Updated the version string to reflect the above, i.e., to "4.2.1" 2007-10-29 Martin Sebor * genxviews (process_results): Corrected a list of suffixes and documented the build type convention. 2007-10-29 Martin Sebor Merged the head of branches/4.2.x. * genxviews: New. * xbuildgen: Merged rev 589433. 2007-10-29 Travis Vitek STDCXX-614 * 27.stringbuf.xsputn.stdcxx-515.cpp (main): Include header and add namespace qualifier as required to compile. 2007-10-29 Travis Vitek STDCXX-617 * 26.valarray.transcend.stdcxx-315.cpp (main): Work around bug in Intel C++ 10.0.025 (and other EDG eccp derivatives) that does not consider const copy-assignment operator before attempting to generate one. 2007-10-26 Farid Zaripov * 23.vector.allocator.cpp (address): Use the proper Pointer<> ctor. 2007-10-26 Farid Zaripov Merged r581659 from trunk * 23.vector.bool.stdcxx-235.cpp (main): Corrected the lines which are testing the operator!=. 2007-10-26 Martin Sebor * util.h (rw_sleep, rw_signal): Declared helper functions. * cmdopt.cpp (rw_sleep, rw_signal): Moved formerly static functions from here... * util.cpp: ...to here and declared extern. * exec.cpp (SIGHUP, SIGQUIT, SIGKILL, SIGALRM, ESRCH, EINTR, ECHILD, EINVAL): #defined macros when they're not #defined in system headers. [!_RWSTD_NO_PURE_C_HEADERS] (kill, fdopen): Declared. (wait_for_child): Called rw_signal() instead of sigaction() directly. STDCXX-414 * util.cpp: [!_RWSTD_NO_PURE_C_HEADERS] (rw_signal): Implemented in terms of signal() instead of sigaction() so as to avoid a dependency on POSIX symbols in . 2007-10-26 Travis Vitek * 23.vector.stdcxx-611.cpp: The regression test for STDCXX-611. 2007-10-26 Farid Zaripov STDCXX-437 * include/list [_MSC_VER < 1300]: Remove MSVC 6.0 specific code. * include/loc/_locale.h: Ditto. * include/map: Ditto. * include/rw/_config-msvc.h: Ditto. * include/rw/_config-msvcrt.h: Ditto. * include/rw/_defs.h: Ditto. * include/rw/_tree.h: Ditto. * include/set: Ditto. * include/string: Ditto. * include/vector: Ditto. * src/exception.cpp: Ditto. * src/ti_ios.cpp: Ditto. * src/ti_wios.cpp: Ditto. 2007-10-26 Farid Zaripov Fixed the r588659 * ios_bits.cpp [_MSC_VER > 1300]: Remove unnecessary conditional compilation directive. 2007-10-26 Farid Zaripov * ios_bits.cpp [_MSC_VER > 1300]: Remove unnecessary conditional compilation directive. 2007-10-26 Travis Vitek Farid Zaripov STDCXX-619 * 25.remove.cpp (test_remove): Move rw_assert()'s inside the for-loop body, to avoid invoking them when the for-loop was iterated 0 times). 2007-10-25 Farid Zaripov * projectdef.js (projectCreateVCProject): Generate .pdb file in $(OutDir) instead of $(IntDir). Use common .pdb file instead of two (compiler's and linker's). 2007-10-24 Martin Sebor * README (Source Directory Structure): Removed references to the now unused runall.sh script. (Build Directory Structure): Same. Added links to the exec utility. (Library Build Instructions): Documented that BUILDTYPE is optional. Clarified the same for BUILDTYPE and BUILDMODE, and explained the effect of specifying neither. (VisualStudio Setup Instructions): Added msvc-9.0 and msvc-9.0-x64. (Test Suite Build Instructions): Corrected the placement of the .d files, removed comments about examples and tests being optionalm and described how to run everything from ${BUILDDIR}. Removed mentions of the runall.sh script. 2007-10-24 Farid Zaripov Merged r583889 from trunk with a fix for STDCXX-580 * strstream.cpp (main): Unfreeze streambuf so destructor will deallocate memory. 2007-10-24 Farid Zaripov * 20.temp.buffer.mt.cpp (thr_func): Remove setting default zero values for buffers since std::pair default ctor already do that. 2007-10-24 Travis Vitek STDCXX-584 * 18.exception.cpp (test_throw_proc): Deallocate exception description string passed to user throw proc to avoid memory leak. 2007-10-24 Travis Vitek STDCXX-587 * 20.temp.buffer.mt.cpp (test_return_buffer): Set buffer pointer to 0 after deallocating. (thr_func): Provide default values for buffers. Deallocate buffers that remain allocated after thread loop. 2007-10-23 Martin Sebor * locale.cpp: Updated copyright year after a prior change. * thread.cpp: Same. 2007-10-23 Martin Sebor * locale.cpp (_XOPEN_SOURCE): Avoided #defining macro when _RWSTD_NO_PURE_C_HEADERS is not #defined (e.g., EDG eccp). * file.cpp: Same. 2007-10-23 Martin Sebor * thread.cpp [!_RWSTD_NO_PURE_C_HEADERS](popen): Declared function for super-strict mode (e.g., EDG eccp). 2007-10-23 Farid Zaripov STDCXX-611 * vector.cc (_C_insert_n): Use overloads of the uninitialized algorithms that take a reference to Allocator as the last argument. 2007-10-23 Travis Vitek STDCXX-593 * locale.cpp (rw_locale): Update used array size to avoid writing past the end of the allocated buffer. Use a growth constant variable to avoid writing the same value in many places. Use precalculated name length instead of calling strlen() repeatedly. [_WIN32]: Hide _malloc_dbg and _free_dbg behind macros to clean up multiple conditional blocks and to avoid memory block type mismatch. 2007-10-23 Farid Zaripov * vector.cc (_C_insert_1): Reverted changes from r587164 since the STDCXX-495 issue is deferred to 4.3 release. 2007-10-23 Farid Zaripov * ctype.html: Removed #include from example code. * locale.html: Ditto. * money-put.html: Ditto. * moneypunct.html: Ditto. * num-put.html: Ditto. * numpunct.html: Ditto. * strstreambuf.html: Ditto. * valarray.html: Ditto. 2007-10-22 Travis Vitek STDCXX-578 * time_put.cpp (__rw_get_timepunct): changed to use operator new/delete for memory allocation to avoid new/delete mismatch with facet destructor. 2007-10-22 Farid Zaripov STDCXX-609 * generate.wsf (generateBuildBatch): Use 11s build type as default if no any build type specified. 2007-10-22 Farid Zaripov * strstreambuf.html: Updated the example source and the program output according to changes in r587173. 2007-10-22 Travis Vitek STDCXX-579 * strstreambuf.cpp (main): Unfreeze streambuf so destructor will deallocate memory. 2007-10-22 Farid Zaripov STDCXX-495 * vector.cc (_C_insert_1): Allow inserting the values from *this. If the value_type is a fundamental type, then save the inserting value in a temporary copy before the moving [it; end()) range toward to end. If the value_type is not a fundamental type, then save the pointer to the inserting value and adjust the pointer if the inserting value belongs to the range [it; end()). 2007-10-22 Farid Zaripov * 23.vector.modifiers.stdcxx-495.cpp: Regression test for STDCXX-495. 2007-10-22 Farid Zaripov Merged r585116 from trunk with a fix for STDCXX-596 * 0.printf.cpp (_rw_fmtarray): Check pointer bounds before examining the contents to avoid uninitialized memory read. 2007-10-22 Travis Vitek STDCXX-581 * printf.cpp (_rw_fmtstr): Provide reasonable length value to call to __rw_memattr() to avoid touching uninitialized memory. (_rwfmtwstr): Ditto. (_rwfmtarray): Ditto. 2007-10-20 Martin Sebor * ChangeLog: Regenerated. 2007-10-20 Martin Sebor STDCXX-350 * _rawiter.h [__GNUG__ >= 4] (get_temporary_buffer, return_temporary_buffer): Used __attribute__ (__may_alias__) to tell the gcc optimizier about type-punning in a reinterpret_cast() and to silence gcc 4 warning: dereferencing type-punned pointer will break strict-aliasing rules. 2007-10-20 Martin Sebor * 26.valarray.cassign.cpp (run_test): Disabled tests exercising valarray specializations on a user-defined type for 4.2.0 and prior since they are known to fail to compile due to STDCXX-512. 2007-10-20 Martin Sebor * _config.h (_RWSTD_VER): Corrected comments explaining source and binary compatibility rules controlling changes to the library version number. 2007-10-19 Travis Vitek * README (Index): Update section names and numbers. (VisualStudio Directory Structure): Add new section describing expected directory structure. (VisualStudio Setup Instructions): Remove filename extension from the list of supported configuration options so that the provided names match the names allowed by the configure script. 2007-10-19 Farid Zaripov * etc/config/windows/configure.wsf (configure): #define _RWSTD_NO_REENTRANT macro in config.h file for single-threaded builds for compatibility with prior versions of stdcxx on Windows (MSVC 7.x), i.e., in order to make 8s and 11s build types non-reentrant even when the compiler itself doesn't have a non-reentrant runtime (MSVC 8 and beyond). * include/rw/_config-msvcrt.h (_RWSTD_REENTRANT): #define macro only if #defined _MT and not #defined _RWSTD_NO_REENTRANT, for single-threaded builds with compilers that don't have a single-threaded CRT (i.e. MSVC 8, MSVC 9). 2007-10-19 Farid Zaripov Merged rev 586502 from branches/4.2.0. * _config-msvcrt.h [_DLL]: Define configuration macros to maintain binary compatibility with 4.1.x on MSVC only for dynamic builds to prevent the multiple definition symbols linker errors. 2007-10-19 Martin Sebor * README (Disclaimer): Added an explanation. (Contents): Expanded to document LICENSE.txt and NOTICE.txt. (Compatibility): Added a new subsection. (Unpacking Intructions): Expanded to clarify tarball names. (Source Directory Structure): Added documentation of top-level files new in this release and removed the no longer relevant blurb about the fixtree.sh script. (Library Utilities): Briefly documented the new utility programs, exec and gencat. (Test Suite Files): Added a few words about the exec utility. (Examples and Tutorials): Expanded and clarified. (Build Directory Structure): Removed obsolte text about tests being optional. (Library Build Instructions): Updated top-level directory listing. (Library Installation on UNIX Systems): New section documenting the install make target. (Library Installation on Microsoft Windows): Placeholder for future work. (config.h): Documented confih.log. (Compiler Configuration Macros): Documented _RWSTD_NO_OBJECT_MANGLING. (C Library Configuration Macros): Documented _RWSTD_NO_PURE_C_HEADERS. (Macros Controlling Strings): Documented _RWSTD_USE_STRING_ATOMIC_OPS. (HP aCC): Arranged compiler versions from most recent to oldest. (SGI MIPSpro): Added "tested with" versions. (Sun C++): Added x86 to the set of arches. 2007-10-18 Martin Sebor * ChangeLog: Regenerated. 2007-10-18 Martin Sebor * branches/4.2.x: Created a copy of the head of branches/4.2.0 in preparation for maintenance (micro) releases after 4.2.0. 2007-10-18 Farid Zaripov STDCXX-509 * limits_bits.cpp [_RWSTD_VER_MAJOR < 5 && _MSC_VER && _DLL] (__rw_flt_denorm_min_vc, __rw_flt_infinity_vc, __rw_flt_qNaN_vc, __rw_flt_sNaN_vc, __rw_dbl_denorm_min_vc, __rw_dbl_infinity_vc, __rw_dbl_qNaN_vc, __rw_dbl_sNaN_vc, __rw_ldbl_denorm_min_vc, __rw_ldbl_infinity_vc, __rw_ldbl_qNaN_vc, __rw_ldbl_sNaN_vc): New constants exported as the corresponding floating constants with the same mangled names as those from 4.1.3 (sans the _vc suffix) for the binary compatibility with prior releases. 2007-10-18 Martin Sebor * string (__replace_aux): Made member function template public as intended (but not actually done) in rev 586118 to get HP aCC 3 and 5 to compile the code again (and to restore the solution implemented for STDCXX-271). 2007-10-18 Travis Vitek Martin Sebor * _config-msvc.h: Reverted rev 586112 and applied the same patch below (modulo some additional noise that had accidentally slipped in). * _config-msvcrt.h [_RWSTD_VER_MAJOR < 5]: Define configuration macros to maintain binary compatibility with 4.1.x on both MSVC and Intel C++ on Windows. 2007-10-18 Martin Sebor * string (_C_grow): Made private again, after inadvertently making it public for MSVC in rev 544975 while fixing STDCXX-271 for HP aCC and braking binary compatibiliy in programs compled with MSVC that invoke the replace() member function template (which in turn calls the inline but exported _C_grow()). 2007-10-18 Travis Vitek * _config-msvc.h [_RWSTD_VER_MAJOR < 5]: Define configuration macros to maintain binary compatibility with 4.1.x on MSVC. 2007-10-18 Martin Sebor Disabled fix for STDCXX-469 for Microsoft Visual Studio to maintain binary compatibility with stdcxx 4.1.x (the compiler mangles the access specifier of class members into their names). * include/loc/_facet.h [_MSC_VER] (__rw_facet, ~__rw_facet): Made class ctor and dtor public again until stdcxx 5.0. 2007-10-18 Martin Sebor Disabled fix for STDCXX-162 for binary compatibility with stdcxx 4.1.x. * include/rw/_config.h (_RWSTD_NO_STRING_ATOMIC_OPS): New macro #defined on x86_64 Linux unless _RWSTD_USE_STRING_ATOMIC_OPS is #defined on the command line (or in the generated config.h header). * include/rw/_strref.h (_RWSTD_NO_STRING_MUTEX): Guarded by the new _RWSTD_NO_STRING_ATOMIC_OPS macro. 2007-10-17 Martin Sebor * README: Merged rev 585595 from trunk. 2007-10-16 Martin Sebor Merged changes for STDCXX-505 from trunk. * doc/stdlibref/acknow.html: Renamed... * doc/stdlibref/history.html: ...to this. * doc/stdlibref/frames-intro-contents.html: Reflected the above. * doc/stdlibug/acknow.html: Renamed... * doc/stdlibug/history.html: ...to this. * doc/stdlibug/frames-intro-contents.html: Reflected the above. * doc/stdlibref/history.html: Updated. * doc/stdlibug/history.html: Same. 2007-10-16 Martin Sebor Merged rev 584997 from trunk. * README: Removed the "(pre-release)" bit from the version string and added the set of platforms on which 4.2.0 has been tested on. 2007-10-16 Martin Sebor Merged rev 585216 from trunk. * ChangeLog: Generated a single per-project ChangeLog. * examples/ChangeLog: Deleted. Superseded by the above. * include/ChangeLog: Likewise. * src/ChangeLog: Likewise. * util/ChangeLog: Likewise. * tests/ChangeLog: Likewise. 2007-10-16 Martin Sebor STDCXX-600 * include/exception (exception): Partially reverted fix for STDCXX-262 committed in rev 583667 due to the binary incompatibility of the change both with stdcxx 4.1.x as well as with gcc's libsupc++. 2007-10-15 Martin Sebor * src/ChangeLog: Merged in from trunk. * include/ChangeLog: Likewise. * examples/ChangeLog: Likewise. * tests/ChangeLog: Likewise. * util/ChangeLog: Likewise. 2007-10-15 Martin Sebor STDCXX-599 * file.cpp [!_RWSTD_NO_PURE_C_HEADERS] (mkstemp): Relaxed a guard around a declaration of a POSIX (but not C) function to enable it in strict C++ environments (e.g., with EDG eccp). 2007-10-15 Martin Sebor STDCXX-509 * limits [_RWSTD_NO_OBJECT_MANGLING] (__rw_flt_denorm_min, __rw_flt_infinity, __rw_flt_qNaN, __rw_flt_sNaN, __rw_dbl_denorm_min, __rw_dbl_infinity, __rw_dbl_qNaN, __rw_dbl_sNaN, __rw_ldbl_denorm_min, __rw_ldbl_infinity, __rw_ldbl_qNaN, __rw_ldbl_sNaN): Declared with C++ linkage when the config macro is #defined for binary compatibility with prior 4.x releases. * limits_bits.cpp: Same as above for definitions of constants. * num_get.cpp [_RWSTD_NO_OBJECT_MANGLING] (__rw_flt_infinity, __rw_dbl_infinity, __rw_ldbl_infinity): Same. 2007-10-15 Martin Sebor * valarray.cpp: Merged from trunk at rev 584618. 2007-10-15 Martin Sebor * exception: Merged from trunk at rev 583667. * new: Same. 2007-10-15 Martin Sebor * NO_OBJECT_MANGLING.cpp: Merged from trunk at rev 584880. * object_mangling_imp.cpp: Same. 2007-10-15 Martin Sebor * branches/4.2.0: Merged changes required to port to EDG eccp. * branches/4.2.0/include/rw/_config-eccp.h: from trunk at rev 583987. * branches/4.2.0/include/ansi/_cerrno.h: from trunk at rev 583997. * branches/4.2.0/src/file.cpp: from trunk at rev 583990. * branches/4.2.0/etc/config/src/WCHAR_T.cpp: from trunk at rev 583980. 2007-10-15 Martin Sebor * branches/4.2.0/doc: Merged the latest trunk. 2007-10-15 Farid Zaripov STDCXX-206 * _ioinsert.cc (__rw_insert): Corrected #ifndef to #ifdef. 2007-10-05 Farid Zaripov * _punct.cc (__rw_match_name): Added missing space character. 2007-10-04 Farid Zaripov STDCXX-564 * _punct.cc (__rw_match_name): Cast 1UL constant to _RWSTD_SIZE_T to avoid 64-bit MSVC warning C4334: '<<' : result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?). * file.cpp [_WIN64]: Disable 64-bit MSVC warning C4244 for __rw_fseek(), __rw_fread(), __rw_fwrite() functions. 2007-10-04 Farid Zaripov STDCXX-576 * sstream.cc (xsputn): If __s is a part of the internal buffer and buffer reallocation is needed, save the offset of the __s from pbase() anc correct __s value after the buffer reallocation. 2007-10-01 Travis Vitek STDCXX-568 * mapfile.gcc: Add ASL header. * mapfile.gcc-2: Same. 2007-10-01 Travis Vitek STDCXX-568 * rwstdmessages.cpp: Add ASL header. * rwstdmessages.msg: Same. * rwstdmessages.rc: Same. 2007-10-01 Travis Vitek STDCXX-561 * T.61-8BIT: Add ASL header. * ISO_646.IRV: Same. 2007-10-01 Travis Vitek STDCXX-560 * MADVISE.cpp: Add ASL header. 2007-10-01 Travis Vitek STDCXX-452 * setlocale.cpp (~__rw_setlocale): Restore the previous locale in a threadsafe manner. Simplified. 2007-10-01 Farid Zaripov STDCXX-452 STDCXX-453 * punct.cpp (__rw_get_moneypunct): After creating __rw_setlocale object check if the locale data is initialized by another thread to avoid doing unnecessary work and leaking memory. (__rw_get_numpunct): Ditto. 2007-09-28 Martin Sebor * branches/4.2.0: Merged the head of trunk. 2007-09-11 Martin Sebor * libc_decl.sh: Merged with r573411 of trunk: http://svn.apache.org/viewvc?view=rev&revision=573411. * acc.config: Same. 2007-08-24 Andrew Black STDCXX-470 STDCXX-479 STDCXX-481 * etc/config/src/LIMITS.cpp: Revert http://svn.apache.org/viewvc?view=rev&revision=554421 , accidentally merged to 4.2.0 prematurely as part of http://svn.apache.org/viewvc?view=rev&revision=569152 . * GNUmakefile: Deploy http://svn.apache.org/viewcvs?view=rev&rev=555061 to enable building with Sun C++ 5.9 (Sun Studio 12). * etc/config/GNUmakefile.cfg: Ditto. * etc/config/sunpro.config: Ditto. * etc/config/makefile.rules: Ditto. 2007-08-23 Andrew Black STDCXX-482 * LIMITS.cpp: Deploy http://svn.apache.org/viewvc?view=rev&rev=555106 to 4.2.0 to avoid stalls in nightly testing testing system (caused by usage of the 4.2.0 branch in the nightly testing system.) 2007-06-26 Martin Sebor * stdcxx/branches/4.2.0: Merged the head of stdcxx/trunk. * 4.2.0: New branch based off of trunk/ at rev 536028. 2007-05-06 Martin Sebor * stdlibug/22-2.html: Inserted Google Analytics tracking code using the sed script below: /<\/BODY>/ { $!N s/<\/BODY>\n<\/HTML>/\n\n\n