The following code:

a := "a";
b := "a"{"b"};
<debug-succeeds(?a)> b;
<debug-succeeds(?a{_})> b;
<debug-succeeds(?"a")> b;
<debug-succeeds(?"a"{_})> b

debug-succeeds(s) = (s; !"succeeds" <+ !"fails"); debug

gives the following output:

fails
fails
succeeds
succeeds

However, I would expect all to succeed, if not, then at least the second and fourth ones.

I also cannot find another way to match variables without having to remove annotations (please let me know if there is one).

Submitted by Oskar van Rest on 25 January 2014 at 08:15

On 2 July 2014 at 22:24 Oskar van Rest commented:

Workaround for <eq> (a, b) is <SRTS-EXT-eq-ignore-annos(|b)> a

external SRTS-EXT-eq-ignore-annos(|t)

Log in to post comments