X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/f3ead217b8636f623399e66bd937b1c51774d4af..db40c3f869cbee0d02ad5aff4519c72c9476e141:/tests/reduce.at diff --git a/tests/reduce.at b/tests/reduce.at index 8ac894c0..7e4977a0 100644 --- a/tests/reduce.at +++ b/tests/reduce.at @@ -1,6 +1,6 @@ # Exercising Bison Grammar Reduction. -*- Autotest -*- -# Copyright (C) 2001-2002, 2007-2012 Free Software Foundation, Inc. +# Copyright (C) 2001-2002, 2007-2013 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -201,28 +201,6 @@ input.y:14.11-13: warning: rule useless in grammar [-Wother] ^^^ ]]) -AT_BISON_CHECK([[input.y]], 0, [], -[[input.y: warning: 9 nonterminals useless in grammar [-Wother] -input.y: warning: 9 rules useless in grammar [-Wother] -input.y:6.1-8: warning: nonterminal useless in grammar: useless1 [-Wother] -input.y:7.1-8: warning: nonterminal useless in grammar: useless2 [-Wother] -input.y:8.1-8: warning: nonterminal useless in grammar: useless3 [-Wother] -input.y:9.1-8: warning: nonterminal useless in grammar: useless4 [-Wother] -input.y:10.1-8: warning: nonterminal useless in grammar: useless5 [-Wother] -input.y:11.1-8: warning: nonterminal useless in grammar: useless6 [-Wother] -input.y:12.1-8: warning: nonterminal useless in grammar: useless7 [-Wother] -input.y:13.1-8: warning: nonterminal useless in grammar: useless8 [-Wother] -input.y:14.1-8: warning: nonterminal useless in grammar: useless9 [-Wother] -input.y:6.11-13: warning: rule useless in grammar: useless1: '1' [-Wother] -input.y:7.11-13: warning: rule useless in grammar: useless2: '2' [-Wother] -input.y:8.11-13: warning: rule useless in grammar: useless3: '3' [-Wother] -input.y:9.11-13: warning: rule useless in grammar: useless4: '4' [-Wother] -input.y:10.11-13: warning: rule useless in grammar: useless5: '5' [-Wother] -input.y:11.11-13: warning: rule useless in grammar: useless6: '6' [-Wother] -input.y:12.11-13: warning: rule useless in grammar: useless7: '7' [-Wother] -input.y:13.11-13: warning: rule useless in grammar: useless8: '8' [-Wother] -input.y:14.11-13: warning: rule useless in grammar: useless9: '9' [-Wother] -]]) AT_CHECK([[sed -n '/^Grammar/q;/^$/!p' input.output]], 0, [[Nonterminals useless in grammar @@ -317,16 +295,6 @@ not-reduced.y:17.17-18.63: warning: rule useless in grammar [-Wother] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ]]) -AT_BISON_CHECK([[not-reduced.y]], 0, [], -[[not-reduced.y: warning: 2 nonterminals useless in grammar [-Wother] -not-reduced.y: warning: 3 rules useless in grammar [-Wother] -not-reduced.y:14.1-13: warning: nonterminal useless in grammar: not_reachable [-Wother] -not-reduced.y:11.6-19: warning: nonterminal useless in grammar: non_productive [-Wother] -not-reduced.y:11.6-57: warning: rule useless in grammar: exp: non_productive [-Wother] -not-reduced.y:14.16-56: warning: rule useless in grammar: not_reachable: useful [-Wother] -not-reduced.y:17.17-18.63: warning: rule useless in grammar: non_productive: non_productive useless_token [-Wother] -]]) - AT_CHECK([[sed -n '/^Grammar/q;/^$/!p' not-reduced.output]], 0, [[Nonterminals useless in grammar not_reachable @@ -397,9 +365,9 @@ AT_BISON_CHECK([[input.y]], 0, [], input.y: warning: 3 rules useless in grammar [-Wother] input.y:5.15-25: warning: nonterminal useless in grammar: underivable [-Wother] input.y:6.14-24: warning: nonterminal useless in grammar: indirection [-Wother] -input.y:5.15-25: warning: rule useless in grammar: exp: underivable [-Wother] -input.y:6.14-24: warning: rule useless in grammar: underivable: indirection [-Wother] -input.y:7.14-24: warning: rule useless in grammar: indirection: underivable [-Wother] +input.y:5.15-25: warning: rule useless in grammar [-Wother] +input.y:6.14-24: warning: rule useless in grammar [-Wother] +input.y:7.14-24: warning: rule useless in grammar [-Wother] ]]) AT_CHECK([[sed -n '/^Grammar/q;/^$/!p' input.output]], 0, @@ -965,7 +933,7 @@ S: 'a' A 'a' A: 'a' 'a' B ; B: 'a' - | %prec 'a' + | %empty %prec 'a' ; c: 'a' 'a' 'b' | A @@ -1565,8 +1533,8 @@ a: 'a' ; and multiple reductions. The first reduction has more lookaheads than the second, so the first should always be preferred as the default reduction if enabled. The second reduction has one lookahead. */ -b: ; -c: ; +b: %empty; +c: %empty; ]], dnl Visit each state mentioned above. [['a', 'a']],