Subject: bug#63918: 28.2; re-builder rx fails to match

From: Mattias Engdegård <[email-masked]>
Date: Tue, 6 Jun 2023 11:31:02 +0200

The problem is that re-builder's handling of rx is badly designed, and you are not the first to be annoyed by this. In 'rx' mode, re-builder expects you to write a Lisp expression that can be used as argument to `rx-to-string`, something that nobody wants to do. In your case, instead of

  (rx (or "a" "b") "c")

you would have to write something like

  '(seq (or "a" "b") "c")

Note the quote (because the expression is evaluated) and `seq` (because `rx-to-string` only takes a single rx expression as input; `rx` forms an implicit `seq` of its arguments).

Previous bugs: 

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=60196
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=54107