tree 5272505d161bc6510180d0d04f1c6278849e2927
parent 21b3ccf870fab9e0e3ceb223effd36c2395afab0
author Travis Vitek <vitek@apache.org> 1217623877 +0000
committer Travis Vitek <vitek@apache.org> 1217623877 +0000

2008-08-01  Travis Vitek  <vitek@roguewave.com>

	Merge r671285, r671294, r671306, r671612, r671972, r672048, r672395,
	r672596, r672948, r673227, r673490, r673495, r673534, r673851, r673865,
	r675044, r675316, r675344, r675390, r675429, r675434, r675458, r675803,
	r675809, r675829, r676788, r677418, r677464, r677465, r677985, r678247,
	r678475, r678894, r678901, r678907, r678913, r678931, r680574, r681567
	from branches/4.3.x:


	2008-06-24  Travis Vitek  <vitek@roguewave.com>

	STDCXX-916
	* include/rw/_meta_arr.h (_RWSTD_REMOVE_EXTENT)
	(_RWSTD_REMOVE_ALL_EXTENTS): Add macros for type traits.
	* include/rw/_meta_cat.h (_RWSTD_IS_VOID, _RWSTD_IS_INTEGRAL)
	(_RWSTD_IS_FLOATING_POINT, _RWSTD_IS_ARRAY, _RWSTD_IS_UNION)
	(_RWSTD_IS_LVALUE_REFERENCE, _RWSTD_IS_RVALUE_REFERENCE)
	(_RWSTD_IS_CLASS, _RWSTD_IS_FUNCTION, _RWSTD_IS_MEMBER_OBJECT_PTR)
	(_RWSTD_IS_MEMBER_OBJECT_PTR): Ditto.
	* include/rw/_meta_comp.h (_RWSTD_IS_REFERENCE, _RWSTD_IS_OBJECT)
	(_RWSTD_IS_ARITHMETIC, _RWSTD_IS_FUNDAMENTAL, _RWSTD_IS_SCALAR)
	(_RWSTD_IS_MEMBER_POINTER, _RWSTD_IS_COMPOUND): Ditto.
	* include/rw/_meta_cv.h (_RWSTD_REMOVE_CONST, _RWSTD_REMOVE_CV)
	(_RWSTD_REMOVE_VOLATILE, _RWSTD_ADD_CONST, _RWSTD_ADD_VOLATILE)
	(_RWSTD_ADD_CV): Ditto.
	* include/rw/_meta_prop.h (_RWSTD_IS_CONST, _RWSTD_IS_VOLATILE)
	(_RWSTD_IS_STANDARD_LAYOUT, _RWSTD_IS_POD, _RWSTD_IS_ABSTRACT)
	(_RWSTD_IS_POLYMORPHIC, _RWSTD_IS_EMPTY, _RWSTD_HAS_TRIVIAL_CTOR)
	(_RWSTD_HAS_TRIVIAL_COPY, _RWSTD_HAS_TRIVIAL_ASSIGN)
	(_RWSTD_HAS_TRIVIAL_DTOR, _RWSTD_IS_TRIVIAL, _RWSTD_RANK)
	(_RWSTD_HAS_NOTHROW_CTOR, _RWSTD_HAS_NOTHROW_COPY)
	(_RWSTD_HAS_NOTHROW_ASSIGN, _RWSTD_HAS_VIRTUAL_DTOR)
	(_RWSTD_IS_SIGNED, _RWSTD_IS_UNSIGNED, _RWSTD_EXTENT_1)
	(_RWSTD_EXTENT_2): Ditto.
	* include/rw/_meta_ptr.h (_RWSTD_REMOVE_POINTER)
	(_RWSTD_ADD_POINTER): Ditto.
	* include/rw/_meta_ref.h (_RWSTD_ADD_RVALUE_REFERENCE)
	(_RWSTD_ADD_LVALUE_REFERENCE, _RWSTD_REMOVE_REFERENCE): Ditto.
	* include/rw/_meta_rel.h (_RWSTD_IS_SAME, _RWSTD_IS_BASE_OF)
	(_RWSTD_IS_CONVERTIBLE): Ditto.
	* include/rw/_meta_sign.h (_RWSTD_MAKE_SIGNED)
	(_RWSTD_MAKE_UNSIGNED): Ditto.


	2008-06-24  Travis Vitek  <vitek@roguewave.com>

	STDCXX-916
	* include/type_traits: Remove doxygen comments, leaving C++
	comments where appropriate.
	* include/rw/_meta_arr.h: Ditto.
	* include/rw/_meta_cat.h: Ditto.
	* include/rw/_meta_comp.h: Ditto.
	* include/rw/_meta_cv.h: Ditto.
	* include/rw/_meta_other.h: Ditto.
	* include/rw/_meta_prop.h: Ditto.
	* include/rw/_meta_ptr.h: Ditto.
	* include/rw/_meta_ref.h: Ditto.
	* include/rw/_meta_rel.h: Ditto.
	* include/rw/_meta_sign.h: Ditto.
	(_RWSTD_SHRT_SIZE): Fix spelling error.


	2008-06-24  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-958
	* include/tuple: Removed comments containing public API
	documentation in the interests implementing C++0x features as
	quickly as possible by saving time writing further documentation
	and dealing with documentation-related issues in the foreseeable
	future.
	* include/rw/_tuple.h: Likewise.
	* include/rw/_tuple_traits.h: Likewise.
	* include/rw/_forward.h: Likewise.
	* include/rw/_ref_wrap.h: Likewise.
	* doc/Doxyfile: Not needed for now.


	2008-06-25  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-958
	* include/rw/_meta_help.h (_RWSTD_BOOL_CONST): Add convenience
	macro for boolean constants.


	2008-06-26  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-958
	* tests/intro/17.names.cpp: C++0x `reference_wrapper' class
	template requires `type' member so replace `type' name with
	`!ERROR!' only when not building with C++0x extensions.


	2008-06-27  Travis Vitek  <vitek@roguewave.com>

	* tests/utilities/20.forward.cpp [_RWSTD_NO_EXT_CXX_0X]: Add
	guard to get test to compile and run when extension is not
	explicitly enabled. Include rw/_defs.h explicitly before using
	configuration macro to follow include policy.
	* tests/utilities/20.tuple.cnstr.cpp: Ditto.
	* tests/utilities/20.tuple.elem.cpp: Ditto.
	* tests/utilities/20.tuple.helpers.cpp: Ditto.
	* tests/utilities/20.meta.help.cpp: include rw/_defs.h explicitly
	in case rw_driver.h does not.
	* tests/utilities/20.meta.rel.cpp: Ditto.
	* tests/utilities/20.meta.trans.arr.cpp: Ditto.
	* tests/utilities/20.meta.trans.cv.cpp: Ditto.
	* tests/utilities/20.meta.trans.ptr.cpp: Ditto.
	* tests/utilities/20.meta.trans.ref.cpp: Ditto.
	* tests/utilities/20.meta.unary.comp.cpp: Ditto.
	* tests/utilities/20.meta.trans.other.cpp: Ditto. Move includes
	inside _RWSTD_NO_EXT_CXX_0X block.
	* tests/utilities/20.meta.trans.sign.cpp: Ditto.
	* tests/utilities/20.meta.unary.cat.cpp: Ditto.
	* tests/utilities/20.meta.unary.prop.cpp: Ditto.


	2008-06-27  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-958
	* include/rw/_ref_wrap.h: Convert internal namespace members to
	standard namespace members (at least until such a time when
	internal namespace members are actually needed).
	(reference_wrapper): Implemented basic constructors, operators,
	and accessors.  (No specializations, function inheritance,
	result_of, or invocation operators yet.)
	(ref, cref): Also implemented.
	* include/functional: Include <rw/_ref_wrap.h> header.
	(Internal header contains C++0x guards so it only gets compiled
	for C++0X code.)


	2008-06-28  Martin Sebor  <sebor@roguewave.com>

	* tests/utilities/20.meta.unary.prop.cpp (cfun_t, incomplete_t): New
	types used for testing.
	(test_is_const, test_is_volatile): Exercised incomplete_t, arrays
	with unknown bounds, functions with C++ and C language linkage,
	and pointers to member functions.
	(test_is_trivial): Exercised void.


	2008-06-30  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-958
	* include/rw/_forward.h: Add additional macro functions for
	consistency.  Use consistent comment format for standard section
	references.  Utilize type trait macro.  Other minor changes in
	copyright notice.
	* include/rw/_ref_wrap.h: Add standard section reference comment.
	Remove explicit template parameter names within class template.
	Add _RWSTD_ASSERT() statements where appropriate.  Replaced
	template parameter name with public typedef name inside class
	template.
	* include/rw/_tuple_traits.h: Removed.  Incorporated directly
	into <tuple> header.
	* include/rw/_tuple.h: Added internal tuple class template and
	make_tuple helpers.  Utilize _RWSTD_FORWARD() function macro.
	* include/tuple: Minor changes in header comment.  Moved internal
	members to <rw/_tuple.h> header.  Include <rw/_forward.h> and
	utilize _RWSTD_FORWARD() and _RWSTD_MOVE macro functions.
	Inherit class template `std::tuple' from internal `__rw_tuple'
	class template.  Reworked pair specialization to also inherit
	from internal tuple.  Add `_BaseU' macro definition for use in
	_RWSTD_STATIC_CAST where type contains commas (which won't work
	in static_cast when expanded).
	(tuple_element): Updated get helpers in std::tuple_element class
	template with internal type trait macros.  
	(get): Fixed.
	(make_tuple(), operator==, operator<): Implemented.
	* tests/utilities/20.tuple.cnstr.cpp: Updated previously broken
	tests.
	* tests/utilities/20.tuple.helpers.cpp: Minor changes (copyright
	notice).
	* tests/utilities/20.tuple.h: Same.
	* tests/utilities/20.tuple.creation.cpp: Added new test program
	for tuple creation helpers.
	* tests/utilities/20.tuple.rel.cpp: Added (outline of) new test
	program
	* tests/utilities/20.tuple.elem.cpp: Added more const/mutable
	tests.



	2008-07-01  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-958
	* include/tuple: Uncomment ctors that were temporarily commented
	out (and accidently checked in) due to forward/move semantics
	problem in make_tuple() with reference wrappers.
	* include/rw/_forward.h: Remove unnecessary _EXPORT macro.
	Define functions as inline.  Change `std' namespace to `_STD' in
	definition of _RWSTD_MOVE function macro.
	* include/rw/_tuple.h: Fix forward/move semantics for homogenous
	move ctor.
	* tests/utilities/20.tuple.h: Add tuple with reference type.
	* tests/utilities/20.tuple.cnstr.cpp: Added tests for tuples
	with reference types.  Added more tests for value move ctors.
	* tests/utilities/20.tuple.creation.cpp: Added two small tests
	for make_tuple() with reference wrappers.


	2008-07-02  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-958
	* include/tuple: Include internal type traits headers
	individually.
	* include/utility: Conditionally include C++0x header if
	corresponding macro is defined (and C++0x extension is enabled).
	* include/functional: Likewise.
	* include/rw/_meta_other.h: Include other necessary headers.
	* include/rw/_forward.h: Remove guards for C++0x extension.
	Reindent preprocessing directives appropriately.
	* include/rw/_ref_wrap.h: Likewise.  
	* include/rw/_tuple.h: Likewise.  Also forward declare reference
	wrapper class rather than including header.  Use _STD macro to
	qualify move() function.

	Incorporates some initial code review comments:
	http://www.nabble.com/Re%3A-Tuple-status-p18230401.html


	2008-07-02  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-948
	* include/functional:  Oops.  Used wrong name for C++0x macro
	guard.  Fixed.
	* include/utility: Likewise.


	2008-07-02  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-958
	* include/tuple: Use `_TypeT' and `_TypesT' template parameter
	names.  Add comment clarifying necessary static casts.  Use
	_RWSTD_SIZE_T type for index of tuple elements per LWG issue
	#755.
	* include/rw/_forward.h: More template parameter renaming.
	* include/rw/_ref_wrap.h: Likewise.
	* include/rw/_tuple.h: Likewise.

	Incorporates more initial code review comments:
	http://www.nabble.com/Re%3A-Tuple-status-p18230401.html


	2008-07-03  Travis Vitek  <vitek@roguewave.com>

	* include/functional [_RWSTD_NO_EXT_CXX_0X]: Move <rw/_ref_wrap.h>
	include into conditional block to avoid problems compiling test
	17.names.cpp


	2008-07-03  Travis Vitek  <vitek@roguewave.com>

	* tests/utilities/20.tuple.cnstr.cpp [_RWSTD_NO_RVALUE_REFERENCES]:
	Disable body of test if _RWSTD_NO_EXT_CXX_0X is not defined but tuples
	are unavailable due to insufficient compiler support.
	(run_test) [_RWSTD_NO_RVALUE_REFERENCES, _RWSTD_NO_EXT_CXX_0X]: Display
	descriptive warning explaining why test is disabled.
	* tests/utilities/20.tuple.helpers.cpp: Ditto.
	* tests/utilities/20.tuple.creation.cpp: Ditto.
	* tests/utilities/20.tuple.elem.cpp: Ditto.
	* tests/utilities/20.tuple.rel.cpp: Ditto.
	* tests/utilities/20.forward.cpp (run_test): Run test_identity() even
	when rvalue references are not supported. Display descriptive warning
	explaining why parts of test are disabled.


	2008-07-08  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-958
	* include/tuple: Second parameter in value move ctor of pair
	specialization missing rvalue reference.
	(make_tuple, get, relational operators): Explicitly declare
	as inline functions.
	(tie): Implemented.
	* include/rw/_tuple.h: Fix move semantics in heterogenous move
	assignment operator.
	(__rw_ignore): Add assignment operator to ignore all values.
	* tests/utilities/20.tuple.cnstr.cpp: Added V&V for tuple
	state and invariants.  Manually inspected proper construction
	of all test tuples.  Updated/corrected/added tests as necessary.
	* tests/utilities/20.tuple.creation.cpp: Added simple tie()
	test.
	* tests/utilities/20.tuple.h: Minor stylistic changes.
	* tests/utilities/20.tuple.helpers.cpp: Same.


	2008-07-09  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-958
	* tests/utilities/20.tuple.cnstr.cpp (verify_tuple): Fixed
	assertions from float/double conversions.
	* tests/tr1.util, tests/tr1.c99: Removed unused directories.


	2008-07-09  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-958
	* include/rw/_tuple.h (__rw_ignore::operator=): Simplify
	defininition of operator.


	2008-07-09  Martin Sebor  <sebor@roguewave.com>

	* include/rw/_select.h (__rw_same_type): Renamed from __rw_is_same
	to avoid conflicts with <rw/_meta_rel.h>.
	* include/rw/_ioinsert.h (__rw_insert): Used __rw_same_type rather
	than __rw_is_same.


	2008-07-09  Martin Sebor  <sebor@roguewave.com>

	* include/queue (typename): Replaced uses of the _TYPENAME macro
	with the now universally supported C++ keyword.
	* include/fstream: Same.
	* include/set: Same.
	* include/list: Same.
	* include/bitset.cc: Same.
	* include/string: Same.
	* include/streambuf.cc: Same.
	* include/ostream.cc: Same.
	* include/map: Same.
	* include/valarray: Same.
	* include/streambuf: Same.
	* include/loc/_money_put.cc: Same.
	* include/loc/_messages.cc: Same.
	* include/loc/_num_put.cc: Same.
	* include/loc/_ctype.cc: Same.
	* include/loc/_numpunct.h: Same.
	* include/loc/_time_get.cc: Same.
	* include/loc/_money_get.cc: Same.
	* include/loc/_num_get.cc: Same.
	* include/loc/_time_put.cc: Same.
	* include/algorithm.cc: Same.
	* include/ostream: Same.
	* include/functional: Same.
	* include/vector.cc: Same.
	* include/type_traits: Same.
	* include/fstream.cc: Same.
	* include/istream.cc: Same.
	* include/deque.cc: Same.
	* include/stack: Same.
	* include/string.cc: Same.
	* include/list.cc: Same.
	* include/istream: Same.
	* include/vector: Same.
	* include/deque: Same.
	* include/bitset: Same.
	* include/algorithm: Same.
	* include/sstream: Same.
	* include/array: Same.
	* include/rw/_defs.h: Same.
	* include/rw/_tree.cc: Same.
	* include/rw/_iterbase.h: Same.
	* include/rw/_select.h: Same.
	* include/rw/_tuple.h: Same.
	* include/rw/_iterator.h: Same.
	* include/rw/_basic_ios.h: Same.
	* include/rw/_specialized.h: Same.
	* include/rw/_ioinsert.cc: Same.
	* include/rw/_tree.h: Same.
	* include/rw/_stringio.cc: Same.
	* include/rw/_strref.h: Same.
	* include/rw/_streamiter.h: Same.
	* include/rw/_forward.h: Same.
	* include/rw/_autoptr.h: Same.
	* include/rw/_smartptr.h: Same.
	* include/rw/_funcbase.h: Same.
	* include/rw/_typetraits.h: Same.
	* include/rw/_allocator.h: Same.
	* include/rw/_ioiter.h: Same.
	* include/rw/_algobase.h: Same.
	* include/sstream.cc: Same.
	* include/tuple: Same.
	* src/collate.cpp: Same.
	* examples/include/examples.h: Same.
	* tests/containers/23.bitset.cpp: Same.
	* tests/utilities/20.meta.help.cpp: Same.
	* tests/utilities/20.auto.ptr.cpp: Same.
	* tests/utilities/20.meta.trans.other.cpp: Same.
	* tests/include/rw_testdefs.h: Same.

	* include/rw/_defs.h (_TYPENAME): Removed macro #definition.
	* include/vector [!_RWSTD_NO_TYPENAME] (typename): Removed macro
	#definition.
	* examples/include/examples.h: Same.
	* tests/include/rw_testdefs.h: Same.
	* etc/config/src/DEPENDENT_TEMPLATE.cpp: Same.
	* etc/config/src/NONDEDUCED_CONTEXT.cpp: Same.
	* etc/config/src/STATIC_CONST_MEMBER_EXPR_CONST.cpp: Same.
	* etc/config/src/TYPENAME.cpp: Deleted.
	* README (_TYPENAME): Same.


	2008-07-09  Martin Sebor  <sebor@roguewave.com>

	* include/tuple (explicit): Replaced uses of the _EXPLICIT macro
	with the universally supported C++ keyword.
	* include/iomanip: Same.
	* include/loc/_locale.h: Same.
	* include/loc/_moneypunct.h: Same.
	* include/loc/_messages.h: Same.
	* include/loc/_numpunct.h: Same.
	* include/loc/_facet.h: Same.
	* include/loc/_collate.h: Same.
	* include/loc/_money_get.h: Same.
	* include/loc/_time_get.h: Same.
	* include/loc/_num_get.h: Same.
	* include/loc/_money_put.h: Same.
	* include/loc/_ctype.h: Same.
	* include/loc/_time_put.h: Same.
	* include/loc/_num_put.h: Same.
	* include/loc/_codecvt.h: Same.
	* include/map: Same.
	* include/rw/_basic_ios.h: Same.
	* include/rw/_iosfailure.h: Same.
	* include/rw/_iterator.h: Same.
	* include/rw/_smartptr.h: Same.
	* include/rw/_rawiter.h: Same.
	* include/rw/_tuple.h: Same.
	* include/rw/_autoptr.h: Same.
	* include/rw/_exception.h: Same.
	* include/bitset: Same.
	* include/set: Same.
	* include/functional: Same.
	* include/istream: Same.
	* include/stack: Same.
	* include/string: Same.
	* include/complex: Same.
	* include/ostream: Same.
	* include/sstream: Same.
	* include/valarray: Same.
	* include/vector: Same.
	* include/stdexcept: Same.
	* include/deque: Same.
	* include/list: Same.
	* include/strstream: Same.
	* include/queue: Same.
	* include/fstream: Same.
	* src/podarray.h: Same.
	* tests/localization/22.locale.synopsis.cpp: Same.
	* tests/containers/23.deque.modifiers.cpp: Same.
	* tests/containers/23.bitset.cpp: Same.
	* tests/diagnostics/19.std.exceptions.cpp: Same.
	* tests/utilities/20.function.objects.cpp: Same.

	* etc/config/src/EXPLICIT.cpp: Deleted test.

	* include/rw/_defs.h (_EXPLICIT): Removed macro #definition.
	
	* tests/containers/23.deque.modifiers.cpp (_RWSTD_NO_EXPLICIT):
	Removed conditional.
	* tests/containers/23.bitset.cpp: Same.
	* tests/utilities/20.function.objects.cpp: Same.


	2008-07-09  Travis Vitek  <vitek@roguewave.com>

	STDCXX-916
	* include/rw/_meta_help.h: Remove doxygen tags from comments.
	* include/rw/_meta_prop.h: Reduce lines to 76 characters or
	less where necessary.
	[_MSC_VER]: Simplify workaround for broken __is_pod() and
	__is_empty().
	[!_RWSTD_TT_IS_STANDARD_LAYOUT]: Change fallback for the
	__rw_is_standard_layout<> trait to be more reliable.
	[!_RWSTD_TT_IS_EMPTY]: Change fallback for __rw_is_empty<>
	trait to be more reliable.
	[!_RWSTD_TT_IS_POLYMORPHIC]: Add fallback to detect polymorphic
	class types when compiler support is not available.
	[!_RWSTD_TT_IS_ABSTRACT]: Add fallback to detect abstract
	class types when compiler support is not available.
	[!_RWSTD_TT_HAS_TRIVIAL_CTOR]: Add fallback to detect types
	that have a trivial constructor when compiler support is not
	available.
	[!_RWSTD_TT_HAS_TRIVIAL_COPY]: Add fallback to detect types
	that have a trivial copy constructor when compiler support is
	not available.
	[!_RWSTD_TT_HAS_TRIVIAL_ASSIGN]: Add fallback to detect types
	that have a trivial assignment operator when compiler support
	is not available.
	[!_RWSTD_TT_HAS_TRIVIAL_DTOR]: Add fallback to detect types
	that have a trivial destructor when compiler support is not
	available.
	[!_RWSTD_TT_HAS_NOTHROW_CTOR]: Add fallback to detect types
	that have a nothrow constructor when compiler support is not
	available.
	[!_RWSTD_TT_HAS_NOTHROW_COPY]: Add fallback to detect types
	that have a nothrow copy constructor when compiler support is
	not available.
	[!_RWSTD_TT_HAS_NOTHROW_ASSIGN]: Add fallback to detect types
	that have a nothrow assignment operator when compiler support
	is not available.
	[!_RWSTD_TT_HAS_VIRTUAL_DTOR]: Add fallback to detect types
	that have a virtual destructor when compiler support is not
	available. Currently tests that the type is polymorphic, which
	may not be entirely accurate.
	* include/rw/_meta_other.h [__GNUG__]: Use simpler implementation for
	__rw_aligned_storage<>. Reorder union members to make most strictly
	aligned member first.
	[_RWSTD_TT_MAX_ALIGNMENT]: Guard __rw_aligned_storage_impl<>
	specializations to prevent their use when the requested alignment
	is out of range.
	* include/rw/_meta_comp.h: Reduce lines to 76 characters or less.
	* include/rw/_meta_cat.h: Add __rw_is_class_or_union<> helper.
	[!_RWSTD_TT_IS_CLASS]: Add fallback to detect class types, using
	_RWSTD_TT_IS_UNION if available.
	[!_RWSTD_TT_IS_UNION]: Add fallback to detect union types, using
	_RWSTD_TT_IS_CLASS if available.
	[!_RWSTD_TT_IS_ENUM]: Add fallback to detect enum types when compiler
	support is not available.
	[!_RWSTD_TT_IS_FUNCTION]: Fix fallback for __rw_is_function to avoid
	compiler warnings on HP aCC 6.16.
	* include/rw/_meta_ref.h: Reduce lines to 76 characters or less.
	Remove use of _TYPENAME macro.
	* include/rw/_meta_rel.h: Fix __rw_is_convertible_impl to avoid 
	warning on HP aCC 6.16. Reduce lines to 76 characters or less.
	Remove use of _TYPENAME macro. Fix __rw_is_convertible_impl<> to
	avoid compiler warnings on HP aCC 6.16.
	[_RWSTD_TT_IS_CONVERTIBLE]: Guard header inclusion. Rename template
	parameters to _From and _To for clarity.
	[_RWSTD_TT_IS_BASE_OF]: Guard header inclusion. Change fallback for
	__rw_is_base_of to be more reliable. Rename template parameters to
	_Base and _Derived for clarity.
	* include/rw/_config-gcc.h [__GNUG__]: Reduce lines to 76 characters
	or less where necessary. Work around issue with gcc aligned attribute
	so we can use it to define __rw_aligned_storage<>.
	* include/rw/_config-acc.h [__HP_aCC]: Add macros _RWSTD_TT_ALIGN_OF,
	_RWSTD_TT_MAX_ALIGNMENT, and _RWSTD_TT_ALIGNED_POD.
	* include/rw/_config-msvc.h [_MSC_VER]: Remove comments about broken
	__is_pod(). Reduce lines to 76 characters or less where necessary.
	Provide accurate definition of _RWSTD_TT_MAX_ALIGNMENT.
	* tests/utilities/20.meta.trans.other.cpp: Add include for stddef.h.
	Use std::alignment_of<> instead of __alignof() for portability. Test
	default alignment for various aligned storage sizes.
	* tests/utilities/20.meta.rel.cpp (test_is_base_of): Fix test cases
	that were failing due to parameter ordering.


	2008-07-10  Martin Sebor  <sebor@roguewave.com>

	STDCXX-990
	* include/rw/_defs.h [2 < __GNUG__](_RWSTD_VA_COPY): Unconditionally
	defined to gcc's __builtin_va_copy() to avoid errors due to potential
	configuration differences (e.g., after configuring in C++ 1998 mode
	and compiling with the -std=c++0x option).


	2008-07-10  Martin Sebor  <sebor@roguewave.com>

	* include/rw/_config-gcc.h [gcc >= 4.3 && __GXX_EXPERIMENTAL_CXX0X__]
	(_RWSTD_NO_VARIADIC_TEMPLATES, _RWSTD_NO_RVALUE_REFERENCES): Undefined
	to make it possible to use C++ 0x library extensions even in builds
	configured w/o C++ 0x extensions enabled in the compiler.
	(_RWSTD_EXT_CXX_0X): #defined in response to either of the -std=c++0x
	or -std=gnu++0x options.


	2008-07-14  Martin Sebor  <sebor@roguewave.com>

	* etc/config/src/INITIALIZER_LIST.cpp: New config test to determine
	whether the C++ 0x class template std::initializer_list is supported.


	2008-07-16  Travis Vitek  <vitek@roguewave.com>

	* tests/utilities/20.meta.unary.prop.cpp: Add empty throw spec to
	help convince eccp-3.10 that functions won't throw.


	2008-07-16  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-958
	* tests/include/20.tuple.h: Remove commented member function.


	2008-07-16  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-958
	* tests/utilities/20.tuple.cnstr.cpp: Simplify random character
	generation.


	2008-07-18  Eric Lemings <eric.lemings@roguewave.com>

	STDCXX-958
	* include/rw/_tuple.h (operator==): Minor formatting change.
	(operator<): Fixed lexicographical comparison logic.
	* tests/utilities/20.tuple.h: Remove global tuple typedefs and
	unused output opeator<<.
	* tests/utilities/20.tuple.cnstr.cpp: Replaced typedefs with
	explicit tuple types.  Added TUPLE macros where tuple types
	containing commas are used as function macro arguments.
	* tests/utilities/20.tuple.creation.cpp: Same.
	* tests/utilities/20.tuple.elem.cpp: Same.
	* tests/utilities/20.tuple.helpers.cpp: Same.
	* tests/utilities/20.tuple.rel.cpp: Same.  Also added more tests
	(which uncovered broken `operator<') and concise TEST() function
	macro wrapper.


	2008-07-19  Martin Sebor  <sebor@roguewave.com>

	* tests/utilities/20.meta.unary.nothrow.cpp: New test exercising
	just the has_nothrow_xxx traits (so far has_nothrow_copy_constructor
	only).


	2008-07-21  Eric Lemings  <eric.lemings@roguewave.com>

	STDCXX-808
	* tests/regress/27.streambuf.buffer.stdcxx-808.cpp: Add
	regression test case that has failed in previous releases.


	2008-07-22  Travis Vitek  <vitek@roguewave.com>

	STDCXX-1002
	* include/rw/_meta_prop.h [__SUNPRO_CC]: Work around sunpro-5.9
	detecting cv-qualifiers on array types.


	2008-07-22  Travis Vitek  <vitek@roguewave.com>

	STDCXX-1001
	* include/rw/_meta_arr.h [__IBMCPP__]: Conditionally compile out
	definitions of traits that are partial specializations of unbound array
	types to avoid issues on vacpp-9.0.
	* include/rw/_meta_cat.h: Ditto.
	* include/rw/_meta_prop.h: Ditto.


	2008-07-22  Eric Lemings  <eric.lemings@roguewave.com>

	STDCXX-808
	* tests/regress/27.streambuf.buffer.stdcxx-808.cpp: Add file
	header comment.


	2008-07-22  Eric Lemings  <eric.lemings@roguewave.com>

	STDCXX-978
	* README: Removed _RWSTD_NO_MEMBER_TEMPLATES section.

	* etc/config/src/MEMBER_TEMPLATE_OVERLOAD.cpp: Removed config
	test.  (Assume required compiler support for member templates
	in all subsequent releases.)
	* etc/config/src/MEMBER_TEMPLATES.cpp: Same.
	* etc/config/src/implicit_inclusion_imp.h: Removed #if
	directives and code compiled when no member templates supported.
	* etc/config/src/IMPLICIT_INCLUSION.cpp: Same.
	* etc/config/src/extern_template_imp.h: Same.
	* etc/config/src/EXTERN_MEMBER_TEMPLATE.cpp: Same.
	* etc/config/src/extern_template_imp.cpp: Same.
	* etc/config/src/implicit_inclusion_imp.cc: Same.

	* include/bitest [_RWSTD_NO_MEMBER_TEMPLATES]: Removed #if
	directives leaving code compiled when macro is not defined and
	removing (unused) code that is compiled when macro is defined.
	* include/complex: Same.
	* include/deque: Same.
	* include/deque.cc: Same.
	* include/list: Same.
	* include/list.cc: Same.
	* include/set: Same.
	* include/string: Same.
	* include/string.cc: Same.
	* include/vector: Same.
	* include/vector.cc: Same.

	* src/vecbool.cpp [_RWSTD_NO_MEMBER_TEMPLATES]: Removed
	unused code compiled when no member templates supported.

	* tests/utilities/20.auto.ptr.cpp [_RWSTD_NO_MEMBER_TEMPLATES]:
	Removed #if directives.  (Most code was already being compiled.
	Two directives were not but the code appears harmless.)
	* tests/containers/23.bitset.cpp: Same.
	* tests/localization/22.locale.synopsis.cpp: Same.
	* tests/strings/21.string.exceptions.cpp: Same.

	* examples/include/stocks.h: Removed unused code.


	2008-07-22  Travis Vitek  <vitek@roguewave.com>

	* include/type_traits [_RWSTD_NO_ALIGN_TRAITS]: Conditionally remove
	traits that deal with alignment as there is a good chance they will
	be removed from the draft.
	* include/rw/_defs.h: Define _RWSTD_NO_ALIGN_TRAITS if one or more of
	the alignment helper macros is not provided.
	* include/rw/_meta_prop.h: Stop defining _TT_ macros in workarounds.
	Add fallback for alignment_of<>. Temporarily remove msvc-8.0 workarounds.
	* include/rw/_meta_other.h: Simplify implementation of aligned_storage
	and aligned_union traits.
	* include/rw/_config-acc.h: Update comment after guard macro.
	* include/rw/_config-gcc.h: Remove _RWSTD_EXT_CXX_0X macro.
	* include/rw/_config-eccp.h: Disable a few built-in traits.
	* include/rw/_config.h: Remove _RWSTD_EXT_CXX_0X macro.
	* tests/include/rw/rw_testdefs.h: Enable strict conformance testing for
	next version of EDG C++ and G++.
	* tests/utilities/20.meta.trans.other.cpp (test_aligned_storage):
	Disable testing aligned_storage<> and aligned_union<> if compiler
	support is unavailable or disabled.
	* tests/utilities/20.meta.unary.nothrow.cpp (run_test): Move test body
	to new function.
	(test_has_nothrow_copy): Add new function. Conditionally disable tests
	for types that require rvalue-references or variadic template support.
	Conditionally disable test when compiler support is unavailable.
	* tests/utilities/20.meta.unary.cat.cpp (test_trait): Fix assert to
	display correct line number. Update warning message.
	(test_is_union): Conditionally disable test when compiler support is
	unavailable.
	* tests/utilities/20.meta.unary.prop.cpp: Conditionally disable parts
	of tests that require compiler support. Add assertsions to several of
	the test_has_trivial_* and test_has_nothrow_* tests. Expect traits
	has_trivial_assign, has_trivial_copy, has_nothrow_assign and
	has_nothrow_copy to fail for array types.
	(test_alignment_of): Add tests for alignment_of. 
	* tests/utilities/20.meta.unary.rel.cpp: Append a `t' to a few
	internal test class names.
	(test_is_base_of): Disable portion of test if required support
	is not available.


	2008-07-28  Travis Vitek  <vitek@roguewave.com>

	* tests/src/thread.cpp [__EDG__]: Disable error for use of long long
	in pthreadtypes.h system header.


	2008-07-31  Martin Sebor  <sebor@roguewave.com>

	* tests/src/thread.cpp [_RWSTD_POSIX_THREADS]: Simplified
	preprocessor conditional logic introduced in rev 680574.




git-svn-id: https://svn.apache.org/repos/asf/stdcxx/trunk@681820 13f79535-47bb-0310-9956-ffa450edef68
