| Index: tools/lexer_generator/rule_parser.py
|
| diff --git a/tools/lexer_generator/rule_parser.py b/tools/lexer_generator/rule_parser.py
|
| index 5351fe8221880e8d0672fafd2ac1aa8c1eee2c2e..a0a15af81a83a732c2ad3b2ea197cbc7873bdd7b 100644
|
| --- a/tools/lexer_generator/rule_parser.py
|
| +++ b/tools/lexer_generator/rule_parser.py
|
| @@ -295,7 +295,9 @@ class RuleProcessor(object):
|
|
|
| def optimize_dfa(self, log = False):
|
| assert not self.__dfa
|
| - self.__dfa = DfaOptimizer.optimize(self.dfa(), log)
|
| + assert not self.__minimial_dfa
|
| + self.__dfa = DfaOptimizer.optimize(self.minimal_dfa(), log)
|
| + self.__minimial_dfa = None
|
|
|
| def minimal_dfa(self):
|
| if not self.__minimial_dfa:
|
| @@ -320,7 +322,7 @@ class RuleProcessor(object):
|
| else:
|
| assert subgraph == 'default', 'unimplemented'
|
| graph = NfaBuilder.join_subgraph(
|
| - graph, transition, rule_map[transition])
|
| + graph, rule_map[transition])
|
| graphs.append(graph)
|
| graph = NfaBuilder.or_terms(graphs)
|
| rule_map[subgraph] = graph
|
|
|