47 |
AT_CHECK([[bison input.y]]) |
AT_CHECK([[bison input.y]]) |
48 |
|
|
49 |
AT_CHECK([[sed -n '/^Grammar/q;/^$/!p' input.output]], 0, |
AT_CHECK([[sed -n '/^Grammar/q;/^$/!p' input.output]], 0, |
50 |
[[Terminals which are not used: |
[[Terminals which are not used |
51 |
useless1 |
useless1 |
52 |
useless2 |
useless2 |
53 |
useless3 |
useless3 |
102 |
]]) |
]]) |
103 |
|
|
104 |
AT_CHECK([[sed -n '/^Grammar/q;/^$/!p' input.output]], 0, |
AT_CHECK([[sed -n '/^Grammar/q;/^$/!p' input.output]], 0, |
105 |
[[Useless nonterminals: |
[[Useless nonterminals |
106 |
useless1 |
useless1 |
107 |
useless2 |
useless2 |
108 |
useless3 |
useless3 |
166 |
]]) |
]]) |
167 |
|
|
168 |
AT_CHECK([[sed -n '/^Grammar/q;/^$/!p' input.output]], 0, |
AT_CHECK([[sed -n '/^Grammar/q;/^$/!p' input.output]], 0, |
169 |
[[Useless nonterminals: |
[[Useless nonterminals |
170 |
useless1 |
useless1 |
171 |
useless2 |
useless2 |
172 |
useless3 |
useless3 |
176 |
useless7 |
useless7 |
177 |
useless8 |
useless8 |
178 |
useless9 |
useless9 |
179 |
Terminals which are not used: |
Terminals which are not used |
180 |
'1' |
'1' |
181 |
'2' |
'2' |
182 |
'3' |
'3' |
248 |
]]) |
]]) |
249 |
|
|
250 |
AT_CHECK([[sed -n '/^Grammar/q;/^$/!p' not-reduced.output]], 0, |
AT_CHECK([[sed -n '/^Grammar/q;/^$/!p' not-reduced.output]], 0, |
251 |
[[Useless nonterminals: |
[[Useless nonterminals |
252 |
not_reachable |
not_reachable |
253 |
non_productive |
non_productive |
254 |
Terminals which are not used: |
Terminals which are not used |
255 |
useless_token |
useless_token |
256 |
Useless rules |
Useless rules |
257 |
2 exp: non_productive |
2 exp: non_productive |
322 |
]]) |
]]) |
323 |
|
|
324 |
AT_CHECK([[sed -n '/^Grammar/q;/^$/!p' input.output]], 0, |
AT_CHECK([[sed -n '/^Grammar/q;/^$/!p' input.output]], 0, |
325 |
[[Useless nonterminals: |
[[Useless nonterminals |
326 |
underivable |
underivable |
327 |
indirection |
indirection |
328 |
Useless rules |
Useless rules |