]> granicus.if.org Git - re2c/commit
Merge default rules on the fly, assign them the same lowest priority.
authorUlya Trofimovich <skvadrik@gmail.com>
Wed, 7 Oct 2015 15:20:38 +0000 (16:20 +0100)
committerUlya Trofimovich <skvadrik@gmail.com>
Wed, 7 Oct 2015 15:20:38 +0000 (16:20 +0100)
commit573c077962c96ffd3ff4cb1e3445eb18e637803b
treec03ee00a07c8a1b2b0ec9f212cc1d52de634197d
parent5af7cf83dbad5626054335c8b09e31bd14513b76
Merge default rules on the fly, assign them the same lowest priority.

re2c used to postpone merging default rules because rank counter could
only assign consequtive ranks to rules, and default rules must have
the lowest priority. Now rank counter has been modified to return
special value as defult rule rank.
19 files changed:
re2c/Makefile.am
re2c/bootstrap/src/parse/parser.cc
re2c/src/ir/bytecode/bytecode.cc
re2c/src/ir/bytecode/bytecode.h
re2c/src/ir/rule_rank.cc
re2c/src/ir/rule_rank.h
re2c/src/parse/parser.h
re2c/src/parse/parser.ypp
re2c/src/parse/spec.h [new file with mode: 0644]
re2c/test/default_dup.i.c [new file with mode: 0644]
re2c/test/default_dup.i.re [new file with mode: 0644]
re2c/test/default_dup.ic.c [new file with mode: 0644]
re2c/test/default_dup.ic.re [new file with mode: 0644]
re2c/test/default_dup_star_1.ic.c [new file with mode: 0644]
re2c/test/default_dup_star_1.ic.re [new file with mode: 0644]
re2c/test/default_dup_star_2.ic.c [new file with mode: 0644]
re2c/test/default_dup_star_2.ic.re [new file with mode: 0644]
re2c/test/reuse_conds_default_0.cgir.c
re2c/test/reuse_conds_default_1.cgir.c