tame: Ignore duplicate conjunctive predicates in value list optimization error

This can occur in generated code (e.g. from proguic if a question-based
predicate inherits a predicate already specified).  This commit does not
change anything that's emitted; it merely allows proceeding.

TAMER can be smarter about this; I don't want to invest more time into
generalizing deduplication of predicates.
main
Mike Gerwitz 2021-07-19 14:53:25 -04:00
parent 5dab913ecb
commit 53360548da
2 changed files with 12 additions and 1 deletions

View File

@ -14,6 +14,16 @@ commits that introduce the changes. To make a new release, run
`tools/mkrelease`, which will handle updating the heading for you.
NEXT
====
Compiler
--------
- Do not report value list optimization error on duplicate conjunctive
predicates.
- This doesn't emit code any differently, it merely permits the situation,
which can occur in generated code.
v18.0.2 (2021-07-15)
====================
This is a bugfix release that corrects issues with the Summary Page compiler

View File

@ -1030,7 +1030,8 @@
not( c:eq )
or (
c:eq/c:value-of
and $symtable-map( c:eq/c:value-of/@name )/@dim != '0' ) ] )" />
and $symtable-map( c:eq/c:value-of/@name )/@dim != '0' ) ] )
and count( distinct-values( $matches/c:eq/c:value-of/@name ) ) > 1" />
</function>