Comments (2)
A slightly smaller minimization:
//> using scala 3.nightly
class Box[+O]:
def ++[O2 >: O](other: Box[O2]): Box[O2] = ???
object Box:
val empty: Box[Nothing] = ???
def test[T]: Box[T] =
List(Box.empty, Box.empty)
// .reduceOption[Box[T]](_ ++ _) // works
.reduceOption(_ ++ _) // fails
.getOrElse(Box.empty)
Output:
-- [E007] Type Mismatch Error: ~/bugs/i21275.scala:13:14 ---------------
10 | List(Box.empty, Box.empty)
11 | // .reduceOption[Box[T]](_ ++ _) // works
12 | .reduceOption(_ ++ _) // fails
13 | .getOrElse(Box.empty)
| ^
| Found: Box[Any]
| Required: Box[T]
|
| longer explanation available when compiling with `-explain`
from dotty.
from dotty.
Related Issues (20)
- Extension method fails to resolve for member type of a structural type
- find less fragile alternative to .tastycheck testing
- The auto-approximated bound for match types leaks type captures
- Auto-approximating bound for match types caused changes in erasure, which are TASTy- and binary incompatible HOT 1
- scaladoc: clauses with evidence parameters as context bounds
- `scala` script uses an old Scala version for printing help messages HOT 1
- Regression in implicit search in mixed implicit/givens sources HOT 10
- Inconsistent handling of match types on dependent types when overriding HOT 3
- Failed to resolve extension method: cannot establish a reference to [...]
- Regression in `katrix/perspective` for extension methods HOT 3
- Compiler crashes when combining lazy val and macros HOT 2
- different TASTy output with scala2-library-tasty
- Regression: tuple inline matching and head/tail HOT 3
- Scaladoc snippet compilation fails to evaluate a macro HOT 1
- `-source:future-migration` generating warnings on `TypeRepr` matches HOT 1
- Passing an inlined result of tuple concatenation to an inline def that calls an intermediate method fails to typecheck
- Higher-kinded type is incompatible to itself HOT 2
- 3.5.0-RC6 Release procedure
- 3.4.3-RC1 Release procedure HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dotty.