diff options
author | Jon Pretty <jon.pretty@propensive.com> | 2017-05-29 19:13:25 -0600 |
---|---|---|
committer | Jon Pretty <jon.pretty@propensive.com> | 2017-05-29 19:13:25 -0600 |
commit | 582844689f50ab13060c27ad24be081eba779fca (patch) | |
tree | eaa79dd46ca385418bf236953922d59add18fbcd | |
parent | a5e3bd7b949ba9b2997b1cbcca5365c1f97e2487 (diff) | |
download | magnolia-582844689f50ab13060c27ad24be081eba779fca.tar.gz magnolia-582844689f50ab13060c27ad24be081eba779fca.tar.bz2 magnolia-582844689f50ab13060c27ad24be081eba779fca.zip |
Looks like it's finally working!
-rw-r--r-- | core/src/main/scala/generic.scala | 2 | ||||
-rw-r--r-- | tests/shared/src/main/scala/magnolia/main.scala | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/core/src/main/scala/generic.scala b/core/src/main/scala/generic.scala index 4519290..86b4d24 100644 --- a/core/src/main/scala/generic.scala +++ b/core/src/main/scala/generic.scala @@ -97,7 +97,9 @@ abstract class GenericMacro(whiteboxContext: whitebox.Context) { } inferredImplicit.map { imp => + c.resetLocalAttrs(imp) transformer.transform(imp) + c.typecheck(imp) }.orElse { directInferImplicit(genericType, typeConstructor, count + 1) } diff --git a/tests/shared/src/main/scala/magnolia/main.scala b/tests/shared/src/main/scala/magnolia/main.scala index 2111565..c2a7d70 100644 --- a/tests/shared/src/main/scala/magnolia/main.scala +++ b/tests/shared/src/main/scala/magnolia/main.scala @@ -3,7 +3,7 @@ package magnolia sealed trait Bar case class Foo(one: String) extends Bar -case class Quux(two: Double, three: Bar) extends Bar +case class Quux(two: Double, three: List[Bar]) extends Bar case class Bippy(four: String) class Baz(val x: Bar) extends AnyVal @@ -16,6 +16,10 @@ object Main { def main(args: Array[String]): Unit = { println(implicitly[Extractor[Bar]].extract(Thing("42"))) + + + + } } |