# Exercising Bison Grammar Reduction. -*- Autotest -*-
-# Copyright (C) 2001, 2002, 2007 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 2007, 2008 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
exp: useful;
]])
-AT_CHECK([[bison input.y]])
+AT_BISON_CHECK([[input.y]])
AT_CHECK([[sed -n '/^Grammar/q;/^$/!p' input.output]], 0,
-[[Terminals which are not used
+[[Terminals unused in grammar
useless1
useless2
useless3
exp: useful;
]])
-AT_CHECK([[bison input.y]], 0, [],
+AT_BISON_CHECK([[input.y]], 0, [],
[[input.y: warning: 9 nonterminals useless in grammar
input.y:4.8-15: warning: nonterminal useless in grammar: useless1
input.y:5.8-15: warning: nonterminal useless in grammar: useless2
useless9: '9';
]])
-AT_CHECK([[bison input.y]], 0, [],
-[[input.y: warning: 9 nonterminals and 9 rules useless in grammar
+AT_BISON_CHECK([[input.y]], 0, [],
+[[input.y: warning: 9 nonterminals useless in grammar
+input.y: warning: 9 rules useless in grammar
input.y:6.1-8: warning: nonterminal useless in grammar: useless1
input.y:7.1-8: warning: nonterminal useless in grammar: useless2
input.y:8.1-8: warning: nonterminal useless in grammar: useless3
useless7
useless8
useless9
-Terminals which are not used
+Terminals unused in grammar
'1'
'2'
'3'
%%
]])
-AT_CHECK([[bison not-reduced.y]], 0, [],
-[[not-reduced.y: warning: 2 nonterminals and 3 rules useless in grammar
+AT_BISON_CHECK([[not-reduced.y]], 0, [],
+[[not-reduced.y: warning: 2 nonterminals useless in grammar
+not-reduced.y: warning: 3 rules useless in grammar
not-reduced.y:14.1-13: warning: nonterminal useless in grammar: not_reachable
not-reduced.y:11.6-19: warning: nonterminal useless in grammar: non_productive
not-reduced.y:11.6-57: warning: rule useless in grammar: exp: non_productive
[[Nonterminals useless in grammar
not_reachable
non_productive
-Terminals which are not used
+Terminals unused in grammar
useless_token
Rules useless in grammar
2 exp: non_productive
%%
]])
-AT_CHECK([[bison reduced.y]])
+AT_BISON_CHECK([[reduced.y]])
# Comparing the parsers.
cp reduced.c expout
indirection: underivable;
]])
-AT_CHECK([[bison input.y]], 0, [],
-[[input.y: warning: 2 nonterminals and 3 rules useless in grammar
+AT_BISON_CHECK([[input.y]], 0, [],
+[[input.y: warning: 2 nonterminals useless in grammar
+input.y: warning: 3 rules useless in grammar
input.y:5.15-25: warning: nonterminal useless in grammar: underivable
input.y:6.14-24: warning: nonterminal useless in grammar: indirection
input.y:5.15-25: warning: rule useless in grammar: exp: underivable
exp: exp;
]])
-AT_CHECK([[bison input.y]], 1, [],
-[[input.y: warning: 2 nonterminals and 2 rules useless in grammar
+AT_BISON_CHECK([[input.y]], 1, [],
+[[input.y: warning: 2 nonterminals useless in grammar
+input.y: warning: 2 rules useless in grammar
input.y:3.1-3: fatal error: start symbol exp does not derive any sentence
]])