From a8ecbf2e61d8601896063fcde953a6966bf855f8 Mon Sep 17 00:00:00 2001 From: Eugene Yokota Date: Sat, 24 Jan 2026 04:19:25 -0500 Subject: [PATCH] Fix lazy val extraction --- buildfile/src/main/scala/sbt/internal/Eval.scala | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/buildfile/src/main/scala/sbt/internal/Eval.scala b/buildfile/src/main/scala/sbt/internal/Eval.scala index 0a65c79c1..882145e6f 100644 --- a/buildfile/src/main/scala/sbt/internal/Eval.scala +++ b/buildfile/src/main/scala/sbt/internal/Eval.scala @@ -428,9 +428,10 @@ object Eval: if isTopLevelModule(tree.symbol.owner) && isAcceptableType(tpt.tpe) => vals ::= name.mangledString case tpd.ValDef(name, tpt, _) if name.is(NameKinds.LazyLocalName) => - val methodName = name.underlying - val m = tree.symbol.owner.requiredMethod(methodName) - if isAcceptableType(m.info) then vals ::= methodName.mangledString + val str = name.mangledString + val methodName = str.take(str.indexOf("$lzy")) + val m = tree.symbol.owner.requiredMethod(methodName.replace("$minus", "-")) + if isAcceptableType(m.info) then vals ::= methodName case t: tpd.Template => this((), t.body) case t: tpd.PackageDef => this((), t.stats) case t: tpd.TypeDef => this((), t.rhs)