<pre style='margin:0'>
Ryan Schmidt (ryandesign) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/2da42f34e4b288c484ce5f4765338ede4aa929b2">https://github.com/macports/macports-ports/commit/2da42f34e4b288c484ce5f4765338ede4aa929b2</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 2da42f34e4b re2c: Fix build with old compilers
</span>2da42f34e4b is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 2da42f34e4b288c484ce5f4765338ede4aa929b2
</span>Author: Ryan Schmidt <ryandesign@macports.org>
AuthorDate: Sat Jul 4 08:55:44 2020 -0500

<span style='display:block; white-space:pre;color:#404040;'>    re2c: Fix build with old compilers
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/60755
</span><span style='display:block; white-space:pre;color:#404040;'>    See: https://trac.macports.org/ticket/58993
</span>---
 devel/re2c/Portfile                 |  9 +++++++--
 devel/re2c/files/oldcompilers.patch | 14 ++++++++++++++
 2 files changed, 21 insertions(+), 2 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/re2c/Portfile b/devel/re2c/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 5903211876e..444cb605d73 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/re2c/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/re2c/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -28,10 +28,15 @@ use_xz              yes
</span> 
 depends_build       port:bison
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          oldcompilers.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> configure.args      --disable-silent-rules
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# https://trac.macports.org/ticket/58993
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-compiler.blacklist  *gcc-3.* *gcc-4.*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# If future versions exhibit compile errors like
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# "error: no match for 'operator!='" (gcc-4.2) or
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# "error: invalid operands to binary expression" (clang-3.4)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# with regard to ".rend()" it can possibly be fixed. See
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/skvadrik/re2c/issues/198 for discussion and fix.
</span> 
 test.run            yes
 test.target         check
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/re2c/files/oldcompilers.patch b/devel/re2c/files/oldcompilers.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..258c4ac7c8e
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/re2c/files/oldcompilers.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,14 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fix build failure with old compilers like gcc 4.2 and clang 3.4.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/skvadrik/re2c/pull/292
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/dfa/closure_posix.h.orig   2019-07-13 05:08:20.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/dfa/closure_posix.h        2020-07-04 08:19:09.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -125,7 +125,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // init: push configurations ordered by POSIX precedence (highest on top)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     state.clear();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     std::sort(reach.begin(), reach.end(), cmp_gor1_t<ctx_t>(ctx));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    for (typename ctx_t::rcconfiter_t c = reach.rbegin(); c != reach.rend(); ++c) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    typename ctx_t::rcconfiter_t c = reach.rbegin(), e = reach.rend();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    for (; c != e; ++c) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         nfa_state_t *q = c->state;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (q->clos == NOCLOS) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             q->clos = static_cast<uint32_t>(state.size());
</span></pre><pre style='margin:0'>

</pre>