summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOssama Othman <ossama-othman@users.noreply.github.com>2007-03-13 17:02:29 +0000
committerOssama Othman <ossama-othman@users.noreply.github.com>2007-03-13 17:02:29 +0000
commit94a2f8ed2925e6cd0b050c941a7e32f4f9d1636c (patch)
tree7bdc5dba16e0dfcf6fdf4919b0b470467e820d0f
parentf831f8d5d750ef80fbc41e876b698f6c41e1c36a (diff)
downloadATCD-94a2f8ed2925e6cd0b050c941a7e32f4f9d1636c.tar.gz
ChangeLogTag:Tue Mar 13 18:00:34 UTC 2007 Ossama Othman <ossama_othman at symantec dot com>
-rw-r--r--TAO/ChangeLog7
-rw-r--r--TAO/tao/Valuetype/Valuetype_Traits_T.h10
2 files changed, 17 insertions, 0 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog
index 828207f7929..c8b44bd2034 100644
--- a/TAO/ChangeLog
+++ b/TAO/ChangeLog
@@ -1,3 +1,10 @@
+Tue Mar 13 18:00:34 UTC 2007 Ossama Othman <ossama_othman at symantec dot com>
+
+ * tao/Valuetype/Valuetype_Traits_T.h (copy_range):
+
+ Made this trait method a member template to provide support for
+ checked destination iterators.
+
Tue Mar 13 14:17:52 UTC 2007 Johnny Willemsen <jwillemsen@remedy.nl>
* orbsvcs/tests/Bug_2800_Regression/nsmain.cpp:
diff --git a/TAO/tao/Valuetype/Valuetype_Traits_T.h b/TAO/tao/Valuetype/Valuetype_Traits_T.h
index f8b5ee460be..c0107c9ebb7 100644
--- a/TAO/tao/Valuetype/Valuetype_Traits_T.h
+++ b/TAO/tao/Valuetype/Valuetype_Traits_T.h
@@ -41,11 +41,21 @@ struct valuetype_traits_decorator
std::generate(begin, end, &derived::default_initializer);
}
+# ifndef ACE_LACKS_MEMBER_TEMPLATES
+ // Allow MSVC++ >= 8 checked iterators to be used.
+ template <typename iter>
+ inline static void copy_range(
+ object_type ** begin, object_type ** end, iter dst)
+ {
+ std::transform(begin, end, dst, &derived::duplicate);
+ }
+#else
inline static void copy_range(
object_type ** begin, object_type ** end, object_type ** dst)
{
std::transform(begin, end, dst, &derived::duplicate);
}
+#endif /* ACE_LACKS_MEMBER_TEMPLATES */
inline static void release_range(
object_type ** begin, object_type ** end)