diff --git a/src/main/scala/inox/ast/TreeOps.scala b/src/main/scala/inox/ast/TreeOps.scala index a5cc023e182ba59a47b59cec940d532ac0467811..973c25e22a566d0f5625bf2c1b9c352577be820e 100644 --- a/src/main/scala/inox/ast/TreeOps.scala +++ b/src/main/scala/inox/ast/TreeOps.scala @@ -19,7 +19,7 @@ trait TreeOps { self: Trees => } = self.deconstructor } - lazy val TreeIdentity = new SelfTreeTransformer { + class TreeIdentity extends SelfTreeTransformer { override def transform(id: Identifier, tpe: s.Type): (Identifier, t.Type) = (id, tpe) override def transform(v: s.Variable): t.Variable = v override def transform(vd: s.ValDef): t.ValDef = vd @@ -28,11 +28,15 @@ trait TreeOps { self: Trees => override def transform(flag: s.Flag): t.Flag = flag } - lazy val SymbolIdentity = new SymbolTransformer { + lazy val TreeIdentity: SelfTransformer = new TreeIdentity + + class SymbolIdentity extends SymbolTransformer { val transformer = TreeIdentity override def transform(syms: s.Symbols): t.Symbols = syms } + lazy val SymbolIdentity: SymbolTransformer { val transformer: SelfTransformer } = new SymbolIdentity + trait TreeTraverser { def traverse(vd: ValDef): Unit = traverse(vd.tpe) diff --git a/src/main/scala/inox/tip/Parser.scala b/src/main/scala/inox/tip/Parser.scala index 613bdf879f3df6ee6f081478441ba731f98be77d..51024b61afa3fc728839ca9ead39a223691cfdc4 100644 --- a/src/main/scala/inox/tip/Parser.scala +++ b/src/main/scala/inox/tip/Parser.scala @@ -380,10 +380,7 @@ class Parser(file: File) { case SNumeral(n) => IntegerLiteral(n) - // TODO: hexadecimal case - //case SHexadecimal(value) => BVLiteral() - - case SBinary(bs) => + case FixedSizeBitVectors.BitVectorLit(bs) => BVLiteral(BitSet.empty ++ bs.reverse.zipWithIndex.collect { case (true, i) => i }, bs.size) case SDecimal(value) =>