about summary refs log tree commit diff
path: root/src/fix-ng/fix-expr.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/fix-ng/fix-expr.cc')
-rw-r--r--src/fix-ng/fix-expr.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/fix-ng/fix-expr.cc b/src/fix-ng/fix-expr.cc
index 814e186b410c..6e73b29341ff 100644
--- a/src/fix-ng/fix-expr.cc
+++ b/src/fix-ng/fix-expr.cc
@@ -171,7 +171,10 @@ Expr substitute(const ATermMap & subs, Expr e)
         ATermMap subs2(subs);
         ATermList fs = formals;
         while (!ATisEmpty(fs)) {
-            if (!ATmatch(ATgetFirst(fs), "<str>", &s)) abort();
+            Expr def;
+            if (!ATmatch(ATgetFirst(fs), "NoDefFormal(<str>)", &s) &&
+                !ATmatch(ATgetFirst(fs), "DefFormal(<str>, <term>)", &s))
+                abort();
             subs2.remove(s);
             fs = ATgetNext(fs);
         }