pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/devel/xsd xsd uses iterator wrappers around the standa...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/bb3620435970
branches:  trunk
changeset: 348130:bb3620435970
user:      joerg <joerg%pkgsrc.org@localhost>
date:      Tue Jun 07 17:59:50 2016 +0000

description:
xsd uses iterator wrappers around the standard types's iterator and
const_iterator types, but doesn't provide explicit conversion operators
from iterator to const_iterator. This breaks badly when moving from
C++03 to C++11 as the erase signature changed. Conditionally the logic
appropiately by introducing an intermediate typedef.

diffstat:

 devel/xsd/distinfo                                                                      |  17 +++++----
 devel/xsd/patches/patch-libbackend-elements-1.6.1_backend-elements_indentation_cxx.hxx  |   4 +-
 devel/xsd/patches/patch-libcult-1.4.2_cult_cli_file-arguments.hxx                       |   4 +-
 devel/xsd/patches/patch-libcult-1.4.2_cult_containers_deque.hxx                         |  17 ++++++++++
 devel/xsd/patches/patch-libcult-1.4.2_cult_containers_graph.txx                         |   4 +-
 devel/xsd/patches/patch-libcult-1.4.2_cult_containers_map.hxx                           |  16 +++++++++
 devel/xsd/patches/patch-libcult-1.4.2_cult_containers_vector.hxx                        |  16 +++++++++
 devel/xsd/patches/patch-libfrontend-elements-1.1.1_frontend-elements_context.hxx        |   4 +-
 devel/xsd/patches/patch-libxsd-frontend-1.15.0_xsd-frontend_semantic-graph_elements.hxx |   4 +-
 devel/xsd/patches/patch-xsd-3.2.0-2_xsd_cxx_parser_state-processor.cxx                  |   6 +-
 10 files changed, 72 insertions(+), 20 deletions(-)

diffs (220 lines):

diff -r 2ed38c49c87a -r bb3620435970 devel/xsd/distinfo
--- a/devel/xsd/distinfo        Tue Jun 07 17:57:11 2016 +0000
+++ b/devel/xsd/distinfo        Tue Jun 07 17:59:50 2016 +0000
@@ -1,28 +1,31 @@
-$NetBSD: distinfo,v 1.5 2015/11/03 03:29:39 agc Exp $
+$NetBSD: distinfo,v 1.6 2016/06/07 17:59:50 joerg Exp $
 
 SHA1 (xsd-3.2.0+dep.tar.bz2) = d57fd3b326dcfab3af8fdc40fc3cf27fb9d7c7c5
 RMD160 (xsd-3.2.0+dep.tar.bz2) = da02eb15e607ee9b434f2a729c6f8a3da0981348
 SHA512 (xsd-3.2.0+dep.tar.bz2) = d0f09505535cd14dc3189d7d0e503d8e1794d9f4afef4540aa64335d75b834a5e5d6b74ea132ee18e84f6c4a87f1f9248f2819e4d09b6279b822e6af911aa1aa
 Size (xsd-3.2.0+dep.tar.bz2) = 1054603 bytes
-SHA1 (patch-libbackend-elements-1.6.1_backend-elements_indentation_cxx.hxx) = 8d57a1a35a69eef95d7aa0881721d03efd8b2f93
-SHA1 (patch-libcult-1.4.2_cult_cli_file-arguments.hxx) = e016fb9838c2eeca557c1001172721ad4f647e30
-SHA1 (patch-libcult-1.4.2_cult_containers_graph.txx) = 5e0976f3d8bf0f72eb575b95086d50d3c40fbf26
+SHA1 (patch-libbackend-elements-1.6.1_backend-elements_indentation_cxx.hxx) = 3cbaeabc498d9e2f16407d6ef0e2ef605dbd1d74
+SHA1 (patch-libcult-1.4.2_cult_cli_file-arguments.hxx) = 8a57ec5d9e9a7748dc6a5159adf66dbadea1b0da
+SHA1 (patch-libcult-1.4.2_cult_containers_deque.hxx) = 793897b894b67fc5b5054b4cb608772fcd13d714
+SHA1 (patch-libcult-1.4.2_cult_containers_graph.txx) = 6a692dea9792cdb7dec1f2fab72c7dd107415b71
+SHA1 (patch-libcult-1.4.2_cult_containers_map.hxx) = 9fab6ce4cb9cd9d0fb473b991a893563e5f90eab
+SHA1 (patch-libcult-1.4.2_cult_containers_vector.hxx) = 60584067b74083dea9094b9e464498bcb447cbc1
 SHA1 (patch-libcult-1.4.2_cult_mm_bits_evptr.hxx) = c0665ef9f6ee3c5ad1714988388d8c92cd9818ae
 SHA1 (patch-libcult-1.4.2_cult_mm_evptr.hxx) = d7aba021918d29ad5b5f4d5ea23e435b7d908e65
 SHA1 (patch-libcult-1.4.2_cult_mm_shptr.hxx) = b8f2d82601f43af706a65aedfcd7c1567e061db9
 SHA1 (patch-libcult-1.4.2_cult_mm_static-ptr.hxx) = 76225963ff8b710eafada502d4c0c918ffef416e
 SHA1 (patch-libcult-1.4.2_cult_types_fundamental.hxx) = 561512022a9c5d27fcf335ff569a0ec66535a1af
-SHA1 (patch-libfrontend-elements-1.1.1_frontend-elements_context.hxx) = 0c5f933efdfa8caf682c1744f6840eccb11e5193
+SHA1 (patch-libfrontend-elements-1.1.1_frontend-elements_context.hxx) = 7ad057e7f0bd3d65c82d1672561475375d094b5f
 SHA1 (patch-libxsd-frontend-1.15.0_xsd-frontend_parser.cxx) = 30a9b0aecf5605b6c37e72f1a3c8fbfce01140da
 SHA1 (patch-libxsd-frontend-1.15.0_xsd-frontend_semantic-graph_elements.cxx) = 717fca1076c9c4e33a3577cb6c23fa0a9ec1ceab
-SHA1 (patch-libxsd-frontend-1.15.0_xsd-frontend_semantic-graph_elements.hxx) = aeaf05bb21b0de2702a31cecc35a5d8bb7caece2
+SHA1 (patch-libxsd-frontend-1.15.0_xsd-frontend_semantic-graph_elements.hxx) = c9dd61f155ea0971cbd66e73aaa1c570f8691839
 SHA1 (patch-libxsd-frontend-1.15.0_xsd-frontend_semantic-graph_schema.hxx) = cbf09aa1272f6f163ce002db9f4578e5795eaaf3
 SHA1 (patch-libxsd-frontend-1.15.0_xsd-frontend_transformations_anonymous.cxx) = cfe1f7d86725ef2736e6198f5f8780e3656ce6f4
 SHA1 (patch-libxsd-frontend-1.15.0_xsd-frontend_transformations_schema-per-type.cxx) = 0ed23703a8f11984dc51e2bbdcc744b32a5be369
 SHA1 (patch-xsd-3.2.0-2_xsd_cxx_elements.cxx) = 8006dc3a16d945a9c256e0fd2a4c412ad63e8919
 SHA1 (patch-xsd-3.2.0-2_xsd_cxx_parser_elements.cxx) = 06702b980f04c5718b7c0aefb8d629466501f0d2
 SHA1 (patch-xsd-3.2.0-2_xsd_cxx_parser_generator.cxx) = e56dce412f315f1b88f426480dc794a7f69e569a
-SHA1 (patch-xsd-3.2.0-2_xsd_cxx_parser_state-processor.cxx) = 7f6032eda05fa030a0abfbdb4ebfee75b5f6bb47
+SHA1 (patch-xsd-3.2.0-2_xsd_cxx_parser_state-processor.cxx) = e1d6736290d096b4a3dc5ad7d3c6502066a0445b
 SHA1 (patch-xsd-3.2.0-2_xsd_cxx_tree_elements.cxx) = df8759581d58e9b230dc4569d0bce3d23d5ab8ec
 SHA1 (patch-xsd-3.2.0-2_xsd_cxx_tree_generator.cxx) = 79c5927337f1a35e1d6ac53fbba429f1fc0350de
 SHA1 (patch-xsd-3.2.0-2_xsd_xsd.cxx) = e89a36f5616416ad31fa47b1bba2018cb3fbaec9
diff -r 2ed38c49c87a -r bb3620435970 devel/xsd/patches/patch-libbackend-elements-1.6.1_backend-elements_indentation_cxx.hxx
--- a/devel/xsd/patches/patch-libbackend-elements-1.6.1_backend-elements_indentation_cxx.hxx    Tue Jun 07 17:57:11 2016 +0000
+++ b/devel/xsd/patches/patch-libbackend-elements-1.6.1_backend-elements_indentation_cxx.hxx    Tue Jun 07 17:59:50 2016 +0000
@@ -1,4 +1,4 @@
-$NetBSD: patch-libbackend-elements-1.6.1_backend-elements_indentation_cxx.hxx,v 1.1 2013/05/21 16:36:22 joerg Exp $
+$NetBSD: patch-libbackend-elements-1.6.1_backend-elements_indentation_cxx.hxx,v 1.2 2016/06/07 17:59:51 joerg Exp $
 
 --- libbackend-elements-1.6.1/backend-elements/indentation/cxx.hxx.orig        2013-05-14 20:12:33.000000000 +0000
 +++ libbackend-elements-1.6.1/backend-elements/indentation/cxx.hxx
@@ -7,7 +7,7 @@
              // Reduce double newline after "}" into a single one.
              //
 -            typename Hold::Iterator i (hold_.end ()), b (hold_.begin ());
-+            typename Hold::ConstIterator i (hold_.end ()), b (hold_.begin ());
++            typename Hold::EraseIterator i (hold_.end ()), b (hold_.begin ());
  
              for (--i; i != b; --i)
              {
diff -r 2ed38c49c87a -r bb3620435970 devel/xsd/patches/patch-libcult-1.4.2_cult_cli_file-arguments.hxx
--- a/devel/xsd/patches/patch-libcult-1.4.2_cult_cli_file-arguments.hxx Tue Jun 07 17:57:11 2016 +0000
+++ b/devel/xsd/patches/patch-libcult-1.4.2_cult_cli_file-arguments.hxx Tue Jun 07 17:59:50 2016 +0000
@@ -1,4 +1,4 @@
-$NetBSD: patch-libcult-1.4.2_cult_cli_file-arguments.hxx,v 1.1 2013/05/21 16:36:22 joerg Exp $
+$NetBSD: patch-libcult-1.4.2_cult_cli_file-arguments.hxx,v 1.2 2016/06/07 17:59:51 joerg Exp $
 
 --- libcult-1.4.2/cult/cli/file-arguments.hxx.orig     2013-05-14 19:55:31.000000000 +0000
 +++ libcult-1.4.2/cult/cli/file-arguments.hxx
@@ -7,7 +7,7 @@
            throw Bounds ();
  
 -        args_.erase (args_.begin () + i);
-+        Containers::Vector<String>::ConstIterator b(args_.begin());
++        Containers::Vector<String>::EraseIterator b(args_.begin());
 +        args_.erase (b + i);
        }
  
diff -r 2ed38c49c87a -r bb3620435970 devel/xsd/patches/patch-libcult-1.4.2_cult_containers_deque.hxx
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/xsd/patches/patch-libcult-1.4.2_cult_containers_deque.hxx   Tue Jun 07 17:59:50 2016 +0000
@@ -0,0 +1,17 @@
+$NetBSD: patch-libcult-1.4.2_cult_containers_deque.hxx,v 1.1 2016/06/07 17:59:51 joerg Exp $
+
+--- libcult-1.4.2/cult/containers/deque.hxx.orig       2016-06-04 21:42:29.518543508 +0000
++++ libcult-1.4.2/cult/containers/deque.hxx
+@@ -53,6 +53,12 @@ namespace Cult
+       IteratorAdapter<typename Base::const_iterator>
+       ConstIterator;
+ 
++#if defined(_LIBCPP_VERSION) || __cplusplus >= 201103L
++      typedef ConstIterator EraseIterator;
++#else
++      typedef Iterator EraseIterator;
++#endif
++
+ 
+       typedef
+       IteratorAdapter<typename Base::reverse_iterator>
diff -r 2ed38c49c87a -r bb3620435970 devel/xsd/patches/patch-libcult-1.4.2_cult_containers_graph.txx
--- a/devel/xsd/patches/patch-libcult-1.4.2_cult_containers_graph.txx   Tue Jun 07 17:57:11 2016 +0000
+++ b/devel/xsd/patches/patch-libcult-1.4.2_cult_containers_graph.txx   Tue Jun 07 17:59:50 2016 +0000
@@ -1,4 +1,4 @@
-$NetBSD: patch-libcult-1.4.2_cult_containers_graph.txx,v 1.1 2013/05/21 16:36:22 joerg Exp $
+$NetBSD: patch-libcult-1.4.2_cult_containers_graph.txx,v 1.2 2016/06/07 17:59:51 joerg Exp $
 
 --- libcult-1.4.2/cult/containers/graph.txx.orig       2013-05-14 20:04:32.000000000 +0000
 +++ libcult-1.4.2/cult/containers/graph.txx
@@ -7,7 +7,7 @@
      delete_edge (Left& l, Right& r, T& edge)
      {
 -      typename Edges::Iterator i (edges_.find (&edge));
-+      typename Edges::ConstIterator i (edges_.find (&edge));
++      typename Edges::EraseIterator i (edges_.find (&edge));
  
        if (i == edges_.end () ||
            nodes_.find (&l) == nodes_.end () ||
diff -r 2ed38c49c87a -r bb3620435970 devel/xsd/patches/patch-libcult-1.4.2_cult_containers_map.hxx
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/xsd/patches/patch-libcult-1.4.2_cult_containers_map.hxx     Tue Jun 07 17:59:50 2016 +0000
@@ -0,0 +1,16 @@
+$NetBSD: patch-libcult-1.4.2_cult_containers_map.hxx,v 1.1 2016/06/07 17:59:51 joerg Exp $
+
+--- libcult-1.4.2/cult/containers/map.hxx.orig 2016-06-04 21:39:08.347062154 +0000
++++ libcult-1.4.2/cult/containers/map.hxx
+@@ -54,6 +54,11 @@ namespace Cult
+       IteratorAdapter<typename Base::const_iterator>
+       ConstIterator;
+ 
++#if defined(_LIBCPP_VERSION) || __cplusplus >= 201103L
++      typedef ConstIterator EraseIterator;
++#else
++      typedef Iterator EraseIterator;
++#endif
+ 
+       typedef
+       IteratorAdapter<typename Base::reverse_iterator>
diff -r 2ed38c49c87a -r bb3620435970 devel/xsd/patches/patch-libcult-1.4.2_cult_containers_vector.hxx
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/xsd/patches/patch-libcult-1.4.2_cult_containers_vector.hxx  Tue Jun 07 17:59:50 2016 +0000
@@ -0,0 +1,16 @@
+$NetBSD: patch-libcult-1.4.2_cult_containers_vector.hxx,v 1.1 2016/06/07 17:59:51 joerg Exp $
+
+--- libcult-1.4.2/cult/containers/vector.hxx.orig      2016-06-04 21:33:18.608175663 +0000
++++ libcult-1.4.2/cult/containers/vector.hxx
+@@ -51,6 +51,11 @@ namespace Cult
+       IteratorAdapter<typename Base::const_iterator>
+       ConstIterator;
+ 
++#if defined(_LIBCPP_VERSION) || __cplusplus >= 201103L
++      typedef ConstIterator EraseIterator;
++#else
++      typedef Iterator EraseIterator;
++#endif
+ 
+       typedef
+       IteratorAdapter<typename Base::reverse_iterator>
diff -r 2ed38c49c87a -r bb3620435970 devel/xsd/patches/patch-libfrontend-elements-1.1.1_frontend-elements_context.hxx
--- a/devel/xsd/patches/patch-libfrontend-elements-1.1.1_frontend-elements_context.hxx  Tue Jun 07 17:57:11 2016 +0000
+++ b/devel/xsd/patches/patch-libfrontend-elements-1.1.1_frontend-elements_context.hxx  Tue Jun 07 17:59:50 2016 +0000
@@ -1,4 +1,4 @@
-$NetBSD: patch-libfrontend-elements-1.1.1_frontend-elements_context.hxx,v 1.1 2013/05/21 16:36:22 joerg Exp $
+$NetBSD: patch-libfrontend-elements-1.1.1_frontend-elements_context.hxx,v 1.2 2016/06/07 17:59:51 joerg Exp $
 
 --- libfrontend-elements-1.1.1/frontend-elements/context.hxx.orig      2013-05-14 19:57:57.000000000 +0000
 +++ libfrontend-elements-1.1.1/frontend-elements/context.hxx
@@ -7,7 +7,7 @@
      remove (Char const* key)
      {
 -      Map::Iterator i (map_.find (key));
-+      Map::ConstIterator i (map_.find (key));
++      Map::EraseIterator i (map_.find (key));
  
        if (i == map_.end ())
          throw NoEntry ();
diff -r 2ed38c49c87a -r bb3620435970 devel/xsd/patches/patch-libxsd-frontend-1.15.0_xsd-frontend_semantic-graph_elements.hxx
--- a/devel/xsd/patches/patch-libxsd-frontend-1.15.0_xsd-frontend_semantic-graph_elements.hxx   Tue Jun 07 17:57:11 2016 +0000
+++ b/devel/xsd/patches/patch-libxsd-frontend-1.15.0_xsd-frontend_semantic-graph_elements.hxx   Tue Jun 07 17:59:50 2016 +0000
@@ -1,4 +1,4 @@
-$NetBSD: patch-libxsd-frontend-1.15.0_xsd-frontend_semantic-graph_elements.hxx,v 1.1 2013/05/21 16:36:22 joerg Exp $
+$NetBSD: patch-libxsd-frontend-1.15.0_xsd-frontend_semantic-graph_elements.hxx,v 1.2 2016/06/07 17:59:51 joerg Exp $
 
 --- libxsd-frontend-1.15.0/xsd-frontend/semantic-graph/elements.hxx.orig       2013-05-14 19:59:19.000000000 +0000
 +++ libxsd-frontend-1.15.0/xsd-frontend/semantic-graph/elements.hxx
@@ -7,7 +7,7 @@
        remove_edge_left (Names& e)
        {
 -        ListIteratorMap::Iterator i (iterator_map_.find (&e));
-+        ListIteratorMap::ConstIterator i (iterator_map_.find (&e));
++        ListIteratorMap::EraseIterator i (iterator_map_.find (&e));
          assert (i != iterator_map_.end ());
  
          names_.erase (i->second);
diff -r 2ed38c49c87a -r bb3620435970 devel/xsd/patches/patch-xsd-3.2.0-2_xsd_cxx_parser_state-processor.cxx
--- a/devel/xsd/patches/patch-xsd-3.2.0-2_xsd_cxx_parser_state-processor.cxx    Tue Jun 07 17:57:11 2016 +0000
+++ b/devel/xsd/patches/patch-xsd-3.2.0-2_xsd_cxx_parser_state-processor.cxx    Tue Jun 07 17:59:50 2016 +0000
@@ -1,4 +1,4 @@
-$NetBSD: patch-xsd-3.2.0-2_xsd_cxx_parser_state-processor.cxx,v 1.1 2013/05/21 16:36:22 joerg Exp $
+$NetBSD: patch-xsd-3.2.0-2_xsd_cxx_parser_state-processor.cxx,v 1.2 2016/06/07 17:59:51 joerg Exp $
 
 --- xsd-3.2.0-2/xsd/cxx/parser/state-processor.cxx.orig        2013-05-14 20:08:50.000000000 +0000
 +++ xsd-3.2.0-2/xsd/cxx/parser/state-processor.cxx
@@ -7,7 +7,7 @@
                  depth_ = depth;
  
 -              prefixes_.insert (prefixes_.end (),
-+              Particles::ConstIterator e(prefixes_.end ());
++              Particles::EraseIterator e(prefixes_.end ());
 +              prefixes_.insert (e,
                                  t.prefixes_.begin ().base (),
                                  t.prefixes_.end ().base ());
@@ -17,7 +17,7 @@
                if (prefix)
                {
 -                prefixes_.insert (prefixes_.end (),
-+                Particles::ConstIterator e(prefixes_.end ());
++                Particles::EraseIterator e(prefixes_.end ());
 +                prefixes_.insert (e,
                                    t.prefixes_.begin ().base (),
                                    t.prefixes_.end ().base ());



Home | Main Index | Thread Index | Old Index