-
Notifications
You must be signed in to change notification settings - Fork 1.1k
java.lang.AssertionError: Failure to join alternatives F and F #23032
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Update:
With bisect.scala I was able to determine that offending commit is somewhere between 1cdf99f and b10d64e. I wasn't able to pinpoint an exact commit because a lot of commits between those two do not compile. |
Another update:
This one compiles in 3.3.5, but crashes even 3.4.0. The following patch fixes the crush, but I can't verify that all tests still pass with it: iff --git a/compiler/src/dotty/tools/dotc/core/TypeOps.scala b/compiler/src/dotty/tools/dotc/core/TypeOps.scala
index a1e26c20fd..735d87a98d 100644
--- a/compiler/src/dotty/tools/dotc/core/TypeOps.scala
+++ b/compiler/src/dotty/tools/dotc/core/TypeOps.scala
@@ -278,7 +278,7 @@ object TypeOps:
}
case AndType(tp11, tp12) =>
mergeRefinedOrApplied(tp11, tp2) & mergeRefinedOrApplied(tp12, tp2)
- case tp1: TypeParamRef if tp1 == tp2 => tp1
+ case tp1: TypeParamRef if tp1 =:= tp2 => tp1
case _ => fail
}
} |
@DolphinChips feel free to contribute a PR. |
Fixes a problem introduced in 4b711f5 and closes scala#23032.
Compiler version
3.6.4
Minimized code
Output (click arrow to expand)
Additional information
Manual bisecting shows that this crash was introduced somewhere between versions 3.4.3 and 3.5.0. Above stacktrace is from 3.5.1 and looks identical to what can be seen in 3.5.0 and 3.6.4. I'll try to bisect an exact commit where this was introduced later today.
The text was updated successfully, but these errors were encountered: