gnu: antlr3-3.3: Fix java8 issue.
authorGábor Boskovits <boskovits@gmail.com>
Sun, 4 Mar 2018 13:16:37 +0000 (14:16 +0100)
committerDanny Milosavljevic <dannym@scratchpost.org>
Sun, 4 Mar 2018 13:16:37 +0000 (14:16 +0100)
* gnu/packages/java.scm (antlr3-3.3)[source]: Add patch.
* gnu/packages/patches/antlr3-3_3-fix-java8-compilation.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
gnu/local.mk
gnu/packages/java.scm
gnu/packages/patches/antlr3-3_3-fix-java8-compilation.patch [new file with mode: 0644]

index dffecfc..2ef9b68 100644 (file)
@@ -554,6 +554,7 @@ dist_patch_DATA =                                           \
   %D%/packages/patches/ansible-wrap-program-hack.patch         \
   %D%/packages/patches/antiword-CVE-2014-8123.patch                    \
   %D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch  \
+  %D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch  \
   %D%/packages/patches/ao-cad-aarch64-support.patch            \
   %D%/packages/patches/apr-skip-getservbyname-test.patch       \
   %D%/packages/patches/aspell-default-dict-dir.patch           \
index cda7f0e..21e241d 100644 (file)
@@ -6023,7 +6023,9 @@ tree walking, and translation.")
                                   version ".tar.gz"))
               (sha256
                (base32
-                "0qgg5vgsm4l1d6dj9pfbaa25dpv2ry2gny8ajy4vvgvfklw97b3m"))))
+                "0qgg5vgsm4l1d6dj9pfbaa25dpv2ry2gny8ajy4vvgvfklw97b3m"))
+              (patches
+               (search-patches "antlr3-3_3-fix-java8-compilation.patch"))))
     (arguments
      `(#:jar-name (string-append ,name "-" ,version ".jar")
        #:source-dir (string-join '("tool/src/main/java"
diff --git a/gnu/packages/patches/antlr3-3_3-fix-java8-compilation.patch b/gnu/packages/patches/antlr3-3_3-fix-java8-compilation.patch
new file mode 100644 (file)
index 0000000..a7d6be9
--- /dev/null
@@ -0,0 +1,35 @@
+Based on the upstream fix for the java8 compilation issue.
+Simplified patch.
+Upstream version of patch does not work with this source tree.
+
+The issue is that in java8 it is an error to pass null to
+removeAll. Results in null pointer exception. java7
+behaviour was to return the list unmodified.
+
+From 43867d50c05d1c06ab7220eb974a8874ae10c308 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= <boskovits@gmail.com>
+Date: Fri, 5 Jan 2018 19:08:24 +0100
+Subject: [PATCH] Fix java8 complilation error.
+
+---
+ tool/src/main/java/org/antlr/tool/CompositeGrammar.java | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/tool/src/main/java/org/antlr/tool/CompositeGrammar.java b/tool/src/main/java/org/antlr/tool/CompositeGrammar.java
+index f34ea73..63740a6 100644
+--- a/tool/src/main/java/org/antlr/tool/CompositeGrammar.java
++++ b/tool/src/main/java/org/antlr/tool/CompositeGrammar.java
+@@ -226,7 +226,9 @@ public class CompositeGrammar {
+       public List<Grammar> getIndirectDelegates(Grammar g) {
+               List<Grammar> direct = getDirectDelegates(g);
+               List<Grammar> delegates = getDelegates(g);
+-              delegates.removeAll(direct);
++              if(direct != null) {
++                      delegates.removeAll(direct);
++              }
+               return delegates;
+       }
+-- 
+2.15.1
+