| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|\ \ \
| | | |
| | | |
| | | | |
'refs/pull/546/head' into develop
|
| |\| | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Don't print trees under -Xprint:all if they're identical to the
tree printed at the previous phase. It only works for a single
compilation unit but that is a huge step forward for us debuggers.
For instance this file:
trait Foo { def f = 5 }
used to produce 332 lines of output and now produces 92, with
zero loss of information. It ends with:
[[syntax trees at end of cleanup]] // a.scala: tree is unchanged since mixin
[[syntax trees at end of icode]] // a.scala: tree is unchanged since mixin
[[syntax trees at end of inliner]] // a.scala: tree is unchanged since mixin
[[syntax trees at end of inlineExceptionHandlers]] // a.scala: tree is unchanged since mixin
[[syntax trees at end of closelim]] // a.scala: tree is unchanged since mixin
[[syntax trees at end of dce]] // a.scala: tree is unchanged since mixin
[[syntax trees at end of jvm]] // a.scala: tree is unchanged since mixin
|
| | | | | |
| | \ \ | |
| | \ \ | |
| | \ \ | |
| | \ \ | |
| | \ \ | |
| | \ \ | |
| | \ \ | |
| |\ \ \ \ \ \ \
| | |_|_|_|_|/ /
| |/| | | | | |
| | | | | | | | |
'scalamacros/topic/macrocherrypick', 'lrytz/t5626', 'lrytz/t5009', 'retronym/ticket/5029', 'retronym/ticket/4025', 'retronym/topic/quieter-nsdhnao' and 'retronym/ticket/1133' into develop
|
| | | | | |/ /
| | | | |/| |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Not due to virtpatmat, mind you; it passes with -Xoldpatmat.
Closes SI-4025.
|
| | | | |/ /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Example: Given
case class C(a: Int)(b: Int)
if you call (new C(1)(2)).copy(a = 10)), you get a function (f: Int => C) such
that (f.apply(20)) yields a (new C(10)(20)).
|
| | | |/ /
| | |/| |
| | | | |
| | | | | |
It still breaks as described in the ticket under -Xoldpatmat.
|
|/ / / / |
|
| | | | | |
| \ \ \ | |
| \ \ \ | |
| \ \ \ | |
|\ \ \ \ \ \
| | | |/ / /
| | |/| | |
| | | | | | |
'refs/pull/532/head'; commit 'refs/pull/533/head'; commit 'refs/pull/534/head' into develop
|
| | |/ / /
| | | | |
| | | | |
| | | | | |
This looks like a job for... virtpatmat!
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | | |
Wonder if we should have a special area for high-turnover checkfiles.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Closes SI-4482, SI-4651, SI-3702.
Pending tests for SI-1832, SI-3439, SI-5091, SI-5231, SI-5265.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This reverts commit 58bb2d1bd2000ac3aa2c64b6c5dc56c91e911860.
I guess this must be what's failing the nightly.
|
| |/ / /
|/| | | |
|
|/ / / |
|
| | | |
|
| | |
| | |
| | |
| | | |
No boxing, no MODULE$ indirection.
|
| | |
| | |
| | |
| | |
| | | |
This reverts commit 9b6f51d3ae6ddc6571d3101ea715e25a05aa8adb.
This reverts commit b5919100e785df58bde35bb24abe9d60b4da08a2.
|
| | | | |
| \ \ | |
| \ \ | |
| \ \ | |
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | | |
'refs/pull/519/head'; commit 'refs/pull/520/head' into develop
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Hopefully without slowing things down overmuch. Closes SI-5640.
|
| | | |\ \ \ |
|
| | | | | |/
| | | | |/|
| | | | | |
| | | | | | |
expression is a Function0 application
|
| | | |/ / |
|
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | | |
It turns out iterator.patched forgot to drop replacement values if they were at the beginning.
This is because the index was advancing before checking to see if replaced elements should be
dropped. Moved this behavior to the beginning of next.
|
| | | | |
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Note: This commit exposes a pretty rich type on flatten in views. HOWEVER, because we don't
capture the higher kinded type of the underlying collection, it makes returning a more minimal type
pretty dang hard. I can imagine a very breaking and painful change of capturing the underling
collection as a higher-kinded type as well as the current view type in a *ViewLike.scala.
I hope this kind of issue, along with others, drives a rethink of our view API design.
|
| | | | |
| \ \ | |
|\ \| | |
|
| | | | |
|
| | | | | |
| \ \ \ | |
|\ \| | |
| | |/ /
| |/| |
| | | | |
'refs/pull/506/head'; commit 'refs/pull/507/head'; commit 'refs/pull/508/head' into develop
|
| | | |
| | | |
| | | |
| | | | |
Int and Long. And Boolean (hey, he also deserves some credit!).
|
| |/ /
|/| | |
|
| | | |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Adds an additional argument to the unify method in
specialization - `tparams`. When this parameter is set
to `true`, unification is done over type parameters in
poly types as well.
Additionally, the unification in specialization now
works over type bounds.
This ensures that in the below example:
trait Foo[@specialized(Int) A] {
def bar[B <: A](b: B) {}
}
class IntFoo extends Foo[Int] {
override def bar[B <: Int](b: B) {}
}
the method `bar` gets correctly determined
as a method that needs a special override
for its `bar$mcI$sp`.
|
| |\ \ |
|
| | |/
| | |
| | |
| | |
| | |
| | | |
They were sneaking through as polymorphic Arrays and avoiding boxing.
Closes SI-4216
|
| |\ \
| | |/
| |/|
| | |
| | | |
Conflicts:
src/library/scala/util/parsing/combinator/Parsers.scala
|
| | |
| | |
| | |
| | | |
Also fixes potential issue with Parsers.phrase not being reentrant; however, I was unable to actually reproduce this issue in practice. (The order in which lastNoSuccess was being set and compared seemed to guarantee that it would never actually be a problem).
|
| | | |
|
| | |
| | |
| | |
| | | |
Your know, for performance. Closes SI-5641.
|
| | | | |
| | \ | |
| | \ | |
| | \ | |
| | \ | |
| | \ | |
| | \ | |
| | \ | |
| |\ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | | |
'refs/pull/474/head'; commit 'refs/pull/475/head'; commit 'refs/pull/476/head' into develop
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
The acceptIf and acceptMatch parsers now check for end of input.
Review by moors.
|
| | | | | |/ / |
|
| | | | |/ / |
|
| | | |/ / |
|
| | |/ /
| | | |
| | | |
| | | | |
Methods keySet, values and withDefault now return serializable collections.
|
| |/ /
| | |
| | |
| | |
| | | |
Don't change the owner of a return if the new owner is nested
inside the old owner. Closes SI-5612.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Don't let inaccessible methods prevent calls to *Dynamic,
otherwise we are at the mercy of every "private" alteration
in every class we inherit. Closes SI-5040.
|