diff --git a/src/main/scala/inox/ast/TreeOps.scala b/src/main/scala/inox/ast/TreeOps.scala
index 2b3d76eb1b6b40f11ecbc8c701c1f442c34afc9f..b4af9cdc1457797e6f59f892e87d15d4a3d4ac69 100644
--- a/src/main/scala/inox/ast/TreeOps.scala
+++ b/src/main/scala/inox/ast/TreeOps.scala
@@ -163,6 +163,17 @@ trait TreeTransformer {
     }
   }
 
+  final def transform(fd: s.FunDef): t.FunDef = {
+    new t.FunDef(
+      fd.id,
+      fd.tparams.map(tpd => t.TypeParameterDef(transform(tpd.tp).asInstanceOf[t.TypeParameter])),
+      fd.params.map(transform),
+      transform(fd.returnType),
+      transform(fd.fullBody),
+      fd.flags map transform
+    )
+  }
+
   protected trait TreeTransformerComposition extends TreeTransformer {
     protected val t1: TreeTransformer
     protected val t2: TreeTransformer { val s: t1.t.type }