From 2dd6b190d11e5c66f15d58a404af52e11ad7c28b Mon Sep 17 00:00:00 2001 From: Manos Koukoutos <emmanouil.koukoutos@epfl.ch> Date: Wed, 27 Jul 2016 17:45:11 +0200 Subject: [PATCH] Pattern binders should be ordered --- src/main/scala/inox/ast/Expressions.scala | 4 ++-- src/main/scala/inox/ast/Extractors.scala | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/scala/inox/ast/Expressions.scala b/src/main/scala/inox/ast/Expressions.scala index b8d259cd1..20fccb748 100644 --- a/src/main/scala/inox/ast/Expressions.scala +++ b/src/main/scala/inox/ast/Expressions.scala @@ -229,8 +229,8 @@ trait Expressions { self: Trees => val subPatterns: Seq[Pattern] val binder: Option[ValDef] - private def subBinders = subPatterns.flatMap(_.binders).toSet - def binders: Set[ValDef] = subBinders ++ binder.toSet + private def subBinders = subPatterns.flatMap(_.binders) + def binders: Seq[ValDef] = binder.toSeq ++ subBinders def withBinder(b: ValDef) = { this match { case Pattern(None, subs, builder) => builder(Some(b), subs) diff --git a/src/main/scala/inox/ast/Extractors.scala b/src/main/scala/inox/ast/Extractors.scala index 050f9a485..699874093 100644 --- a/src/main/scala/inox/ast/Extractors.scala +++ b/src/main/scala/inox/ast/Extractors.scala @@ -299,7 +299,7 @@ trait Extractors { self: Trees => def unapply(me: MatchExpr) : Option[(Pattern, Expr, Expr)] = { Option(me) collect { - case MatchExpr(scrut, List(SimpleCase(pattern, body))) if !aliasedSymbols(pattern.binders, exprOps.variablesOf(scrut)) => + case MatchExpr(scrut, List(SimpleCase(pattern, body))) if !aliasedSymbols(pattern.binders.toSet, exprOps.variablesOf(scrut)) => ( pattern, scrut, body ) } } -- GitLab