xflouris / libpll-2

Phylogenetic Likelihood Library 2 - experimental
GNU Affero General Public License v3.0
9 stars 12 forks source link

Deprecated/non-POSIX bison/yacc directives #22

Closed jdx-gh closed 2 years ago

jdx-gh commented 2 years ago

Following errors are reported when raxml-ng is build under MinGWW64:

[  0%] [BISON][parse_utree_t] Building parser with bison 3.8.2
D:/Works/raxml-ng/libs/pll-modules/libs/libpll/src/parse_utree.y:168.1-14: warning: POSIX Yacc does not support %error-verbose [-Wyacc]
  168 | %error-verbose
      | ^~~~~~~~~~~~~~
D:/Works/raxml-ng/libs/pll-modules/libs/libpll/src/parse_utree.y:168.1-14: warning: deprecated directive: ‘%error-verbose’, use ‘%define parse.error verbose’ [-Wdeprecated]
  168 | %error-verbose
      | ^~~~~~~~~~~~~~
      | %define parse.error verbose
D:/Works/raxml-ng/libs/pll-modules/libs/libpll/src/parse_utree.y:170.1-11: warning: POSIX Yacc does not support %destructor [-Wyacc]
  170 | %destructor { pll_utree_graph_destroy($$,NULL); } subtree
      | ^~~~~~~~~~~
D:/Works/raxml-ng/libs/pll-modules/libs/libpll/src/parse_utree.y:171.1-11: warning: POSIX Yacc does not support %destructor [-Wyacc]
  171 | %destructor { free($$); } STRING
      | ^~~~~~~~~~~
D:/Works/raxml-ng/libs/pll-modules/libs/libpll/src/parse_utree.y:172.1-11: warning: POSIX Yacc does not support %destructor [-Wyacc]
  172 | %destructor { free($$); } NUMBER
      | ^~~~~~~~~~~
D:/Works/raxml-ng/libs/pll-modules/libs/libpll/src/parse_utree.y:173.1-11: warning: POSIX Yacc does not support %destructor [-Wyacc]
  173 | %destructor { free($$); } label
      | ^~~~~~~~~~~
D:/Works/raxml-ng/libs/pll-modules/libs/libpll/src/parse_utree.y: warning: fix-its can be applied.  Rerun with option '--update'. [-Wother]

Here is the patch:

diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index f89fb2d..a3cea86 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -14,7 +14,7 @@ set (AVX2_FLAGS "-mfma -mavx2")

 find_package(BISON)
 find_package(FLEX)
-set(LIBPLL_BISON_FLAGS "-y -d -p pll_utree_")
+set(LIBPLL_BISON_FLAGS "-d -p pll_utree_")
 set(LIBPLL_FLEX_FLAGS "-P pll_utree_")
 BISON_TARGET(parse_utree_t 
   ${CMAKE_CURRENT_SOURCE_DIR}/parse_utree.y ${CMAKE_CURRENT_BINARY_DIR}/parse_utree.c
@@ -23,7 +23,7 @@ FLEX_TARGET(lex_utree_t
   ${CMAKE_CURRENT_SOURCE_DIR}/lex_utree.l ${CMAKE_CURRENT_BINARY_DIR}/lex_utree.c
   COMPILE_FLAGS ${LIBPLL_FLEX_FLAGS})
 ADD_FLEX_BISON_DEPENDENCY(lex_utree_t parse_utree_t)
-set(LIBPLL_BISON_FLAGS "-y -d -p pll_rtree_")
+set(LIBPLL_BISON_FLAGS "-d -p pll_rtree_")
 set(LIBPLL_FLEX_FLAGS "-P pll_rtree_")
 BISON_TARGET(parse_rtree_t 
   ${CMAKE_CURRENT_SOURCE_DIR}/parse_rtree.y ${CMAKE_CURRENT_BINARY_DIR}/parse_rtree.c
diff --git a/src/parse_rtree.y b/src/parse_rtree.y
index c72f555..82b282e 100644
--- a/src/parse_rtree.y
+++ b/src/parse_rtree.y
@@ -103,7 +103,7 @@ static void pll_rtree_error(pll_rnode_t * node, const char * s)
   struct pll_rnode_s * tree;
 }

-%error-verbose
+%define parse.error verbose
 %parse-param {struct pll_rnode_s * tree}
 %destructor { pll_rtree_graph_destroy($$,NULL); } subtree
 %destructor { free($$); } STRING
diff --git a/src/parse_utree.y b/src/parse_utree.y
index 7f7845e..f18aae5 100644
--- a/src/parse_utree.y
+++ b/src/parse_utree.y
@@ -165,7 +165,7 @@ static void pll_utree_error(pll_unode_t * node, const char * s)
   struct pll_unode_s * tree;
 }

-%error-verbose
+%define parse.error verbose
 %parse-param {struct pll_unode_s * tree}
 %destructor { pll_utree_graph_destroy($$,NULL); } subtree
 %destructor { free($$); } STRING
amkozlov commented 2 years ago

thank you, merged!