diff --git a/build.sbt b/build.sbt index 011e19468c..f071c3e8e5 100644 --- a/build.sbt +++ b/build.sbt @@ -43,7 +43,7 @@ lazy val commonSettings = Seq( Resolver.sonatypeRepo("snapshots") ), libraryDependencies ++= Seq( - "com.github.mpilquist" %%% "simulacrum" % "0.10.0" % "compile-time", + "com.github.mpilquist" %%% "simulacrum" % "0.11.0" % "compile-time", "org.typelevel" %%% "machinist" % "0.6.2", compilerPlugin("org.scalamacros" %% "paradise" % "2.1.0" cross CrossVersion.patch), compilerPlugin("org.spire-math" %% "kind-projector" % "0.9.3") diff --git a/core/src/main/scala/cats/syntax/apply.scala b/core/src/main/scala/cats/syntax/apply.scala index 32854d57c7..bb0e736ab8 100644 --- a/core/src/main/scala/cats/syntax/apply.scala +++ b/core/src/main/scala/cats/syntax/apply.scala @@ -4,6 +4,8 @@ package syntax trait ApplySyntax extends TupleCartesianSyntax { implicit final def catsSyntaxApply[F[_], A](fa: F[A])(implicit F: Apply[F]): Apply.Ops[F, A] = new Apply.Ops[F, A] { + type TypeClassType = Apply[F] + val self = fa val typeClassInstance = F } diff --git a/core/src/main/scala/cats/syntax/cartesian.scala b/core/src/main/scala/cats/syntax/cartesian.scala index abb69f05ad..e2cb025588 100644 --- a/core/src/main/scala/cats/syntax/cartesian.scala +++ b/core/src/main/scala/cats/syntax/cartesian.scala @@ -4,6 +4,8 @@ package syntax trait CartesianSyntax { implicit final def catsSyntaxCartesian[F[_], A](fa: F[A])(implicit F: Cartesian[F]): CartesianOps[F, A] = new CartesianOps[F, A] { + type TypeClassType = Cartesian[F] + val self = fa val typeClassInstance = F }