From 9b1cdb7534403bb6a1e2cb591bc17757120539d7 Mon Sep 17 00:00:00 2001 From: Mark Harrah Date: Wed, 19 Jun 2013 11:53:11 -0400 Subject: [PATCH] set position on parameter references in task/setting macros --- util/appmacro/src/main/scala/sbt/appmacro/ContextUtil.scala | 3 ++- util/appmacro/src/main/scala/sbt/appmacro/Instance.scala | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/util/appmacro/src/main/scala/sbt/appmacro/ContextUtil.scala b/util/appmacro/src/main/scala/sbt/appmacro/ContextUtil.scala index 48dd32466..dffc5e0c6 100644 --- a/util/appmacro/src/main/scala/sbt/appmacro/ContextUtil.scala +++ b/util/appmacro/src/main/scala/sbt/appmacro/ContextUtil.scala @@ -144,11 +144,12 @@ final class ContextUtil[C <: Context](val ctx: C) } /** Create a Tree that references the `val` represented by `vd`. */ - def refVal(vd: ValDef): Tree = + def refVal(vd: ValDef, pos: Position): Tree = { val t = Ident(vd.name) assert(vd.tpt.tpe != null, "val type is null: " + vd + ", tpt: " + vd.tpt.tpe) t.setType(vd.tpt.tpe) + t.setPos(pos) t } diff --git a/util/appmacro/src/main/scala/sbt/appmacro/Instance.scala b/util/appmacro/src/main/scala/sbt/appmacro/Instance.scala index 3e8b45cf0..5928df8bc 100644 --- a/util/appmacro/src/main/scala/sbt/appmacro/Instance.scala +++ b/util/appmacro/src/main/scala/sbt/appmacro/Instance.scala @@ -162,7 +162,7 @@ object Instance qual.foreach(checkQual) val vd = util.freshValDef(tpe, qual.symbol) inputs ::= new Input(tpe, qual, vd) - util.refVal(vd) + util.refVal(vd, qual.pos) } def sub(name: String, tpe: Type, qual: Tree): Converted[c.type] = {