Skip to content

Commit e545d54

Browse files
committed
Fix binary dependency from tasty
1 parent ac4d40e commit e545d54

File tree

2 files changed

+6
-7
lines changed

2 files changed

+6
-7
lines changed

compiler/src/dotty/tools/dotc/sbt/ExtractDependencies.scala

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -142,13 +142,12 @@ class ExtractDependencies extends Phase {
142142
if (depFile != null) {
143143
// Cannot ignore inheritance relationship coming from the same source (see sbt/zinc#417)
144144
def allowLocal = dep.context == DependencyByInheritance || dep.context == LocalDependencyByInheritance
145-
if (depFile.isClass) {
145+
val depClassFile =
146+
if depFile.isClass then depFile
147+
else depFile.resolveSibling(dep.to.binaryClassName + ".class")
148+
if (depClassFile != null) {
146149
// Dependency is external -- source is undefined
147-
processExternalDependency(depFile, dep.to.binaryClassName)
148-
// } else if (depFile.isTasty) {
149-
// val depClassFile = depFile.resolveSibling(dep.to.binaryClassName + ".class")
150-
// if depClassFile != null then
151-
// processExternalDependency(depClassFile, dep.to.binaryClassName)
150+
processExternalDependency(depClassFile, dep.to.binaryClassName)
152151
} else if (allowLocal || depFile.file != sourceFile) {
153152
// We cannot ignore dependencies coming from the same source file because
154153
// the dependency info needs to propagate. See source-dependencies/trait-trait-211.

sbt-test/source-dependencies/binary/test

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@
33
$ sleep 2000
44

55
$ copy-file changes/Break.scala dep/A.scala
6-
# FIXME -> use/compile
6+
-> use/compile

0 commit comments

Comments
 (0)