Zebediah Figura (@zfigura) commented about dlls/msado15/filter.y:
+filter: %empty + | filter line +; + +line: T_NEWLINE + | TOKEN_COLUMN operations T_INT { + filter_add_integer_column(p->recordset, $1, $2, $3); + } + | TOKEN_COLUMN operations T_FLOAT { + filter_add_float_column(p->recordset, $1, $2, $3); + } + | TOKEN_COLUMN operations T_STRING { + filter_add_string_column(p->recordset, $1, $2, $3); + } + + /* Like is always followed by a string */ That may be, but currently the way conditions are handled seems very inconsistent. I'd argue it'd be better to move *all* the "like" logic to column_match_string(), and then report an error in e.g. column_match_integer() when LIKE is encountered.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/2498#note_32779