[med-svn] r21653 - in trunk/packages/logol/trunk/debian: . patches
Olivier Sallou
osallou at moszumanska.debian.org
Tue Apr 5 12:41:15 UTC 2016
Author: osallou
Date: 2016-04-05 12:41:14 +0000 (Tue, 05 Apr 2016)
New Revision: 21653
Added:
trunk/packages/logol/trunk/debian/patches/fix_antlr35
Modified:
trunk/packages/logol/trunk/debian/changelog
trunk/packages/logol/trunk/debian/patches/series
Log:
fix build/test issues introduced by antlr 3.5 version
Modified: trunk/packages/logol/trunk/debian/changelog
===================================================================
--- trunk/packages/logol/trunk/debian/changelog 2016-04-05 09:01:45 UTC (rev 21652)
+++ trunk/packages/logol/trunk/debian/changelog 2016-04-05 12:41:14 UTC (rev 21653)
@@ -2,6 +2,9 @@
* Team upload.
* Depend on libmail-java instead of libgnumail-java
+ [ Olivier Sallou ]
+ - Fix antlr 3.5 parser generation issue (relates to #820286)
+ Closes: #811185.
-- Emmanuel Bourg <ebourg at apache.org> Fri, 31 Jul 2015 17:17:23 +0200
Added: trunk/packages/logol/trunk/debian/patches/fix_antlr35
===================================================================
--- trunk/packages/logol/trunk/debian/patches/fix_antlr35 (rev 0)
+++ trunk/packages/logol/trunk/debian/patches/fix_antlr35 2016-04-05 12:41:14 UTC (rev 21653)
@@ -0,0 +1,27 @@
+Subject: antlr35 generates issues in parser
+Description: switch to antlr 3.5 (from 3.2) leads to errors.
+This patch fix antlr 3.5 parser generation issues on optional tokens, using workaround in grammar description
+Author: Olivier Sallou <osallou at debian.org>
+Last-Updated: 2016-04-05
+Forwarded: no
+Bug: #820286
+--- a/src/logol.g
++++ b/src/logol.g
+@@ -149,7 +149,7 @@
+ tmpcounter = (Integer) Treatment.counters.get(parentId); tmpcounter++; Treatment.counters.put(parentId,tmpcounter);
+ }
+
+- : ( ( op=(',' | ';' | '|')? { if($op!=null && !$op.text.equals(Constants.OP_OR)) { tmpIsAny = Treatment.isAny; tmpIsAnyMin = Treatment.isAnyMin; tmpIsAnyMax = Treatment.isAnyMax; tmpSaveAny = Treatment.saveAny; tmpcounter = (Integer) Treatment.counters.get(parentId); tmpcounter++; Treatment.counters.put(parentId,tmpcounter); }} ( ent=constrainedEntity[parentId,tmpIsAny,tmpIsAnyMin,tmpIsAnyMax,tmpSaveAny] ) ){ if($op==null) {operator=null; tmpdata+=curView.add($ent.predicate,operator,0,tmpcounter); /*tmpcounter = (Integer) counters.get(parentId); tmpcounter++; counters.put(parentId,tmpcounter);*/ } else { operator=$op.text; if(!operator.equals("|")) { /*tmpcounter = (Integer) counters.get(parentId); tmpcounter++; counters.put(parentId,tmpcounter);*/ tmpdata+=curView.add($ent.predicate,operator,0,tmpcounter); /*tmpcounter = (Integer) counters.get(parentId); tmpcounter++; counters.put(parentId,tmpcounter);*/ } else { tmpdata+=curView.add($ent.predicate,operator,0,tmpcounter);}}; } )+ ;
++ : ent0=constrainedEntity[parentId,tmpIsAny,tmpIsAnyMin,tmpIsAnyMax,tmpSaveAny] {operator=null; tmpdata+=curView.add($ent0.predicate,operator,0,tmpcounter); } ( ( op=(',' | ';' | '|')? { if($op!=null && !$op.text.equals(Constants.OP_OR)) { tmpIsAny = Treatment.isAny; tmpIsAnyMin = Treatment.isAnyMin; tmpIsAnyMax = Treatment.isAnyMax; tmpSaveAny = Treatment.saveAny; tmpcounter = (Integer) Treatment.counters.get(parentId); tmpcounter++; Treatment.counters.put(parentId,tmpcounter); }} ( ent=constrainedEntity[parentId,tmpIsAny,tmpIsAnyMin,tmpIsAnyMax,tmpSaveAny] ) ){ if($op==null) {operator=null; tmpdata+=curView.add($ent.predicate,operator,0,tmpcounter); /*tmpcounter = (Integer) counters.get(parentId); tmpcounter++; counters.put(parentId,tmpcounter);*/ } else { operator=$op.text; if(!operator.equals("|")) { /*tmpcounter = (Integer) counters.get(parentId); tmpcounter++; counters.put(parentId,tmpcounter);*/ tmpdata+=curView.add($ent.predicate,operator,0,tmpcounter); /*tmpcounter = (Integer) counters.get(parentId); tmpcounter++; counters.put(parentId,tmpcounter);*/ } else { tmpdata+=curView.add($ent.predicate,operator,0,tmpcounter);}}; } )* ;
+
+
+
+@@ -455,7 +455,7 @@
+ Treatment.saveAny = tmpSaveAny;
+ }
+ //: ('repeat(' (view[parentId] parameters?) ')' '+' interval? ) { $lvar.content=$view.value; $lvar.repeatQuantity=$interval.text; $lvar.repeatType=$parameters.type; $lvar.repeatParam=$parameters.intervalParam;} ;
+- : 'repeat(' view[parentId] type=(','|';')? typeinterval=interval? { $lvar.content=$view.value; if($type!=null) { if($type.text.equals(",")) {$lvar.repeatType=1; } else {$lvar.repeatType=2;} $lvar.repeatParam=$typeinterval.text.replaceAll("\%\\w+\%", ""); }} ')+' repeatinterval=interval? {if(repeatinterval!=null) {$lvar.repeatQuantity=$repeatinterval.text.replaceAll("\%\\w+\%", "");} } ;
++ : 'repeat(' view[parentId] type=(','|';') typeinterval=interval? { $lvar.content=$view.value; if($type!=null) { if($type.text.equals(",")) {$lvar.repeatType=1; } else {$lvar.repeatType=2;} $lvar.repeatParam=$typeinterval.text.replaceAll("\%\\w+\%", ""); }} ')+' repeatinterval=interval? {if(repeatinterval!=null) {$lvar.repeatQuantity=$repeatinterval.text.replaceAll("\%\\w+\%", "");} } ;
+ //( op=(','| ';' | '|')? (ent=constrainedEntity[parentId] { $value+=curView.execute($ent.predicate,$op.text,0,countVar); }) )*
+
+ parameters returns [ int type, String intervalParam]
Modified: trunk/packages/logol/trunk/debian/patches/series
===================================================================
--- trunk/packages/logol/trunk/debian/patches/series 2016-04-05 09:01:45 UTC (rev 21652)
+++ trunk/packages/logol/trunk/debian/patches/series 2016-04-05 12:41:14 UTC (rev 21653)
@@ -5,3 +5,4 @@
fix_doc_generation
remove_rubygems_usage
fix_swipl72
+fix_antlr35
More information about the debian-med-commit
mailing list