diff --git a/src/main/scala/leon/LeonPhase.scala b/src/main/scala/leon/LeonPhase.scala
index b116d68f5c071a671ddcdbbc52ee4941f10c758b..840d96f8d8569f8f3525d9a788ec344d53fa74d6 100644
--- a/src/main/scala/leon/LeonPhase.scala
+++ b/src/main/scala/leon/LeonPhase.scala
@@ -16,10 +16,10 @@ abstract class TransformationPhase extends LeonPhase[Program, Program] {
   }
 }
 
-abstract class UnitPhase[Program] extends LeonPhase[Program, Program] {
-  def apply(ctx: LeonContext, p: Program): Unit
+abstract class UnitPhase[T] extends LeonPhase[T, T] {
+  def apply(ctx: LeonContext, p: T): Unit
 
-  override def run(ctx: LeonContext)(p: Program) = {
+  override def run(ctx: LeonContext)(p: T) = {
     apply(ctx, p)
     p
   }