Use an IELR parser if available

This commit is contained in:
Rangi
2021-01-10 19:29:47 -05:00
committed by Eldred Habert
parent eb4952c188
commit 5ef8e0a1f6
2 changed files with 2 additions and 0 deletions

View File

@@ -133,6 +133,7 @@ src/asm/parser.c: src/asm/parser.y
add_flag 3 6 parse.error=detailed; \ add_flag 3 6 parse.error=detailed; \
add_flag 3 0 parse.error=verbose; \ add_flag 3 0 parse.error=verbose; \
add_flag 3 0 parse.lac=full; \ add_flag 3 0 parse.lac=full; \
add_flag 3 0 lr.type=ielr; \
echo "DEFS=$$DEFS"; \ echo "DEFS=$$DEFS"; \
${BISON} $$DEFS -d ${YFLAGS} -o $@ $< ${BISON} $$DEFS -d ${YFLAGS} -o $@ $<

View File

@@ -33,6 +33,7 @@ elseif(BISON_VERSION VERSION_GREATER_EQUAL "3.0")
endif() endif()
if(BISON_VERSION VERSION_GREATER_EQUAL "3.0") if(BISON_VERSION VERSION_GREATER_EQUAL "3.0")
set(BISON_FLAGS "${BISON_FLAGS} -Dparse.lac=full") set(BISON_FLAGS "${BISON_FLAGS} -Dparse.lac=full")
set(BISON_FLAGS "${BISON_FLAGS} -Dlr.type=ielr")
endif() endif()
BISON_TARGET(PARSER "asm/parser.y" BISON_TARGET(PARSER "asm/parser.y"
"${PROJECT_SOURCE_DIR}/src/asm/parser.c" "${PROJECT_SOURCE_DIR}/src/asm/parser.c"