-
-
Example in 2.13.1:
```scala
Welcome to the Ammonite Repl 2.0.4 (Scala 2.13.1 Java 11.0.2)
@ {
trait Foo{
object Bar{ def foo(x: Qux) = ??? }
trait Qux
implicit def conv(s: Strin…
-
(Original post: https://stackoverflow.com/questions/62478001/in-scala-how-to-instruct-the-compiler-to-realise-the-equivalence-of-two-abstrac)
## reproduction steps
using Scala (2.12.11, 2.13.2),…
-
## Compiler version: 3.0.1
## Problem
Java cannot extend or implement an abstract class which has an abstract method overridden by a mixin trait.
```Scala
trait A {
def foo: Int
}
trait…
-
## Compiler version
3.2.2
## Minimized code
```Scala
package repro {
opaque type Repro[V] = V
object Repro:
def apply[V](v: V): Repro[V] = v
extension [V](f: Repr…
-
```
trait A {
type T1
type T2
def foo[B : T2] = ... // is T2 : A
-
## Compiler version
3.3.1-RC1-bin-20230502-dee0065-NIGHTLY
## Minimized code
```scala
import scala.annotation.experimental
import scala.quoted.*
class A:
def a: Int = 1
def checkOv…
-
What happened to essential macros training?
-
Emitting a class file involves populating its InnerClass table as per the JVM spec.
For that, GenBCode follows the same strategy GenASM does (which in turn follows what GenJVM did): intercepting via …
-
It would be useful if `0` and `S[n]` could be treated as provably disjoint - currently you need to make a `Nat` enum to get sensible behaviour from match types, however `Nat` is inefficient to materia…