| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
do I import" code to notice _root_.scala.Predef too. Moved some of the
overly specialized, called-only-once functions in treeInfo inside the
one function which needs them. References #1931. No review.
|
|
|
|
|
|
|
| |
Good, I got the whitespace wrong, trying to embed a working checkfile
for windows so I don't have to abandon my one javap test. I think I'm
ready for NASA. No review.
|
|
|
|
|
| |
No review.
|
|
|
|
|
| |
Attempting to make the :javap test pass on windows, no review.
|
|
|
|
|
|
| |
Tightened a condition to avoid a self-referential pattern variable
crash. Closes #3392, no review.
|
|
|
|
|
|
|
| |
Finally figured out what was going on with a certain class of
exhaustiveness checking bugs. Hey moors, you can put away your pins,
puppets, and magic sauces. Closes #3098, no review.
|
|
|
|
|
| |
no review.
|
|
|
|
|
|
|
| |
Be silent when compiling the repl extraction object to suppress spurious
warnings. Also corrected the busted logic for spotting repl wrappers.
Closes #4542, no review.
|
|
|
|
|
|
|
| |
Makes BigInt's isValidThing methods make some kind of sense. I wish I
hadn't written so much code for the numerical classes which languishes
in git tributaries. Closes #4540, no review.
|
|
|
|
|
|
| |
A better test case for #4537 than the one r24881 didn't include, no
review.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
No review.
|
| |
|
|
|
|
|
| |
review by odersky, dragos and whoever feels like it.
|
|
|
|
|
|
|
|
| |
Since I don't want to commit anything "interesting" until we ship 2.9, a
few uninteresting cleanups involving how types are printed, getting some
debugging code in shape to prepare for the long winter ahead, etc. No
review.
|
|
|
|
|
|
|
|
| |
Completely to my surprise, found that fixing all those sequence issues
revealed that the pattern matcher can catch a lot more inexhaustive
cases than it has been catching. Fixed most of the inexhaustive matches
in the compiler, which had become a bit warnier. No review.
|
| |
|
|
|
|
|
|
|
|
| |
Fixing the pattern matcher regression I introduced between rc1 and rc2.
Not done with this situation but at least I managed to boil out the big
problem and keep my five closed pattern matcher tickets to boot. Closes
#4523, no review.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I wrote a warning when nullary methods return Unit. I wimped out of
including it in this patch because we had about 200 of them, and that's
what is fixed in this patch. I will add the warning to some kind of
"-Xlint" feature after 2.9.
This is motivated at least partly by the resolution of #4506, which
indicates the distinction between "def foo()" and "def foo" will
continue to jab its pointy stick into our eyes, so I believe we have a
minimal duty of at least following our own advice about what they mean
and not making a semirandom choice as to whether a method has parens or
not. Review by community.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Improved the error message for another of the most common situations
I hear about in newbieland. It could be taken further. If compilation
fails due to an unimplemented abstract method, and there is a concrete
method of the same name and arity, it will do a pairwise analysis of the
parameters and attempt to further explain where you went off the beam if
it feels it can do so sensibly. Such as in the test case:
% scalac S.scala
S.scala:1: error: class S needs to be abstract, since method g in class J of type (y: Int,z: java.util.List)Int is not defined
(Note that java.util.List does not match java.util.List[String]. To implement a raw type, use java.util.List[_])
class S extends J {
^
one error found
No review.
|
|
|
|
|
| |
Closes #4498, no review.
|
| |
|
|
|
|
|
|
| |
Added warning when someone tries to return a non-Unit value from a Unit
method, no review.
|
|
|
|
|
|
| |
Removed restriction on case classes having only two parameter lists.
Closes #1333, no review.
|
|
|
|
|
|
|
|
|
| |
Working my way through pattern matcher sequence issues mostly caused by
the special handling of Lists. Also deleting all kinds of useless or
almost useless code which is presently only clutter.
Closes #2756, #2800, #3050, #3530, #3972, no review.
|
|
|
|
|
|
| |
Strip unused pattern variable bindings out before performing match
translation. Closes #4269, no review.
|
|
|
|
|
|
| |
[scaladoc] kindFilter should switch show/hide anchor of package. Closes
#4463. Review by malayeri.
|
|
|
|
|
|
| |
[scaladoc] Strike-through for deprecated symbols on the reference index.
Closes #4471. Review by dubochet.
|
| |
|
|
|
|
|
|
|
| |
Also, added some docs variables to Gen* traits that were missing.
No review.
|
|
|
|
|
|
|
|
| |
Of late the test which fires up the window server, which has already
been the source of undue quantities of inconvenience, has taken to
hanging indefinitely when I run the test suite on a remote machine. Rope
at end, goodbye test, no review.
|
| |
|
|
|
|
|
| |
and renames file to avoid ant's brainlessness, no review.
|
| |
|
| |
|
|
|
|
|
| |
No review.
|
|
|
|
|
| |
No review.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Refactoring the collections api to support differentiation between
referring to a sequential collection and a parallel collection, and to
support referring to both types of collections.
New set of traits Gen* are now superclasses of both their * and Par* subclasses. For example, GenIterable is a superclass of both Iterable and ParIterable. Iterable and ParIterable are not in a subclassing relation. The new class hierarchy is illustrated below (simplified, not all relations and classes are shown):
TraversableOnce --> GenTraversableOnce
^ ^
| |
Traversable --> GenTraversable
^ ^
| |
Iterable --> GenIterable <-- ParIterable
^ ^ ^
| | |
Seq --> GenSeq <-- ParSeq
(the *Like, *View and *ViewLike traits have a similar hierarchy)
General views extract common view functionality from parallel and
sequential collections.
This design also allows for more flexible extensions to the collections
framework. It also allows slowly factoring out common functionality up
into Gen* traits.
From now on, it is possible to write this:
import collection._
val p = parallel.ParSeq(1, 2, 3)
val g: GenSeq[Int] = p // meaning a General Sequence
val s = g.seq // type of s is Seq[Int]
for (elem <- g) {
// do something without guarantees on sequentiality of foreach
// this foreach may be executed in parallel
}
for (elem <- s) {
// do something with a guarantee that foreach is executed in order, sequentially
}
for (elem <- p) {
// do something concurrently, in parallel
}
This also means that some signatures had to be changed. For example,
method `flatMap` now takes `A => GenTraversableOnce[B]`, and `zip` takes
a `GenIterable[B]`.
Also, there are mutable & immutable Gen* trait variants. They have
generic companion functionality.
|
| |
|
|
|
|
|
|
|
| |
Fixes my part of #4283 by inserting another cast pre-emptively when an
IllegalAccess error is possible in an erasure-inserted cast. Review by
extempore.
|
|
|
|
|
|
| |
Test cases for #1071 and #4275 since I don't see a lot of test cases,
hint hint, no review.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|