diff --git a/src/main/scala/inox/ast/TreeOps.scala b/src/main/scala/inox/ast/TreeOps.scala
index 5013774f76544d2be7ff49d49ade4fb05d66d5ee..5b44cc92d9ca408298940293036be4caf68739e1 100644
--- a/src/main/scala/inox/ast/TreeOps.scala
+++ b/src/main/scala/inox/ast/TreeOps.scala
@@ -32,6 +32,8 @@ trait TreeOps { self: Trees =>
 
   class SymbolIdentity extends SymbolTransformer {
     val transformer = TreeIdentity
+    override protected final def transformFunction(fd: s.FunDef): t.FunDef = sys.error("unexpected")
+    override protected final def transformADT(adt: s.ADTDefinition): t.ADTDefinition = sys.error("unexpected")
     override def transform(syms: s.Symbols): t.Symbols = syms
   }
 
diff --git a/src/main/scala/inox/transformers/TransformerWithPC.scala b/src/main/scala/inox/transformers/TransformerWithPC.scala
index a00dde1773dcaf52981c56fee074126dc4abb59d..1714f9d9dd76db139373df42bdf1211b7befb62f 100644
--- a/src/main/scala/inox/transformers/TransformerWithPC.scala
+++ b/src/main/scala/inox/transformers/TransformerWithPC.scala
@@ -7,7 +7,7 @@ package transformers
 trait TransformerWithPC extends Transformer {
   val program: Program
   import program._
-  final val trees: program.trees.type = program.trees
+  final lazy val trees: program.trees.type = program.trees
   import trees._
   import symbols._
   type Env = Path