Comments (1)
Test case:
sun@sun-laptop:/mnt/data-local/Work/Workspace/dev/miniboxing-plugin/sandbox(topic/erasure-rebase)$ cat gh-bug-36.scala
package miniboxing.tests.compile.bug36
// https://github.com/miniboxing/miniboxing-plugin/issues/36
trait VectorLike[@miniboxed E, +Self <: Vector[E]]
trait Vector[E] extends VectorLike[E, Vector[E]]
sun@sun-laptop:/mnt/data-local/Work/Workspace/dev/miniboxing-plugin/sandbox(topic/erasure-rebase)$ ../mb-scalac gh-bug-36.scala -Xprint:minibox-dupl -Ycheck:minibox-dupl
[[syntax trees at end of minibox-dupl]] // gh-bug-36.scala
package miniboxing.tests.compile.bug36 {
abstract trait VectorLike[@miniboxed E >: Nothing <: Any, Self >: Nothing <: miniboxing.tests.compile.bug36.Vector[E]] extends Object;
abstract trait Vector[E >: Nothing <: Any] extends Object with miniboxing.tests.compile.bug36.VectorLike_L[E,miniboxing.tests.compile.bug36.Vector[E]];
abstract trait VectorLike_J[Esp >: Nothing <: Any, Selfsp >: Nothing <: miniboxing.tests.compile.bug36.Vector[E]] extends Object with miniboxing.tests.compile.bug36.VectorLike[Esp,Selfsp] {
def miniboxing|tests|compile|bug36|VectorLike_J|E_TypeTag(): Byte
};
abstract trait VectorLike_L[Esp >: Nothing <: Any, Selfsp >: Nothing <: miniboxing.tests.compile.bug36.Vector[E]] extends Object with miniboxing.tests.compile.bug36.VectorLike[Esp,Selfsp]
}
[Now checking: minibox-dupl]
[check: minibox-dupl] The symbol, tpe or info of tree `(miniboxing.tests.compile.bug36.VectorLike_L[E,miniboxing.tests.compile.bug36.Vector[E]]) : [Esp, +Selfsp <: miniboxing.tests.compile.bug36.Vector[E]]miniboxing.tests.compile.bug36.VectorLike[Esp,Selfsp]` refers to a out-of-scope symbol, type E in trait VectorLike. tree.symbol.ownerChain: trait VectorLike_L, package bug36, package compile, package tests, package miniboxing, package <root>
[check: minibox-dupl] The symbol, tpe or info of tree `(abstract trait VectorLike_J[Esp >: Nothing <: Any, Selfsp >: Nothing <: miniboxing.tests.compile.bug36.Vector[E]] extends Object with miniboxing.tests.compile.bug36.VectorLike[Esp,Selfsp] {
def miniboxing|tests|compile|bug36|VectorLike_J|E_TypeTag(): Byte
}) : [Esp, +Selfsp <: miniboxing.tests.compile.bug36.Vector[E]]miniboxing.tests.compile.bug36.VectorLike[Esp,Selfsp]{def miniboxing|tests|compile|bug36|VectorLike_J|E_TypeTag(): Byte}` refers to a out-of-scope symbol, type E in trait VectorLike. tree.symbol.ownerChain: trait VectorLike_J, package bug36, package compile, package tests, package miniboxing, package <root>
[check: minibox-dupl] The symbol, tpe or info of tree `(type Selfsp <: miniboxing.tests.compile.bug36.Vector[E]) : <: miniboxing.tests.compile.bug36.Vector[E]` refers to a out-of-scope symbol, type E in trait VectorLike. tree.symbol.ownerChain: type Selfsp, trait VectorLike_J, package bug36, package compile, package tests, package miniboxing, package <root>
[check: minibox-dupl] The symbol, tpe or info of tree `(abstract trait VectorLike_L[Esp >: Nothing <: Any, Selfsp >: Nothing <: miniboxing.tests.compile.bug36.Vector[E]] extends Object with miniboxing.tests.compile.bug36.VectorLike[Esp,Selfsp]) : [Esp, +Selfsp <: miniboxing.tests.compile.bug36.Vector[E]]miniboxing.tests.compile.bug36.VectorLike[Esp,Selfsp]` refers to a out-of-scope symbol, type E in trait VectorLike. tree.symbol.ownerChain: trait VectorLike_L, package bug36, package compile, package tests, package miniboxing, package <root>
[check: minibox-dupl] The symbol, tpe or info of tree `(type Selfsp <: miniboxing.tests.compile.bug36.Vector[E]) : <: miniboxing.tests.compile.bug36.Vector[E]` refers to a out-of-scope symbol, type E in trait VectorLike. tree.symbol.ownerChain: type Selfsp, trait VectorLike_L, package bug36, package compile, package tests, package miniboxing, package <root>
warning: TreeCheckers detected non-compliant trees in gh-bug-36.scala
one warning found
from miniboxing-plugin.
Related Issues (20)
- VarArgs transformation error
- Wrong Least Square Linear Regression benchmark for RRBVector HOT 4
- (new Array[AnyRef](5)).asInstanceOf[Array[T]] warning HOT 1
- @specialized code reports type mismatch in the presence of miniboxing but succeeds with -P:minibox:mark-all HOT 1
- Slowdown for pattern matching code HOT 1
- new Array[AnyRef](...).asInstanceOf[Array[T]] not supported
- -P:minibox:off and MiniboxedNumeric HOT 1
- Clean up miniboxing.runtime.math HOT 1
- Multiple annotations found for function HOT 5
- Inconsistent behavior of the miniboxing plugin code transformations HOT 8
- Build script: flexible dependency
- Inner classes type param warnings: only when type params are there
- Incorrect translation HOT 2
- Array translation issue:
- Upgrade Scala to 2.10.6 HOT 5
- AbstractMethodError due to bridge removal (again) HOT 6
- Infos shown for each compilation unit
- Support for self-types
- Crash on specialization interop
- Clarify project status on the website and in the repo HOT 8
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 miniboxing-plugin.