| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
This method comes up with some frequency and there are a lot
of ways to write it either unsafely (failing to catch a likely
exception) or with inadequate generality (as was done in the
pre-existing version of this method in ScalaRunTime) so I
thought it warranted a place in the standard library.
|
|
|
|
|
|
|
| |
ForkJoinTaskSupport works on Hotspot, Avian and J9,
while ThreadPoolTaskSupport causes the test
test/files/scalacheck/parallel-collections
to reliably hang on all three.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
topic/merge-2.10.x-to-v2.11.0-M2-74-g00e6c8b
Conflicts:
bincompat-backward.whitelist.conf
bincompat-forward.whitelist.conf
build.xml
src/compiler/scala/reflect/reify/utils/Extractors.scala
src/compiler/scala/tools/nsc/backend/jvm/GenJVM.scala
src/compiler/scala/tools/nsc/symtab/classfile/ICodeReader.scala
src/compiler/scala/tools/nsc/transform/patmat/MatchOptimization.scala
src/compiler/scala/tools/nsc/typechecker/Typers.scala
src/partest/scala/tools/partest/nest/ReflectiveRunner.scala
src/reflect/scala/reflect/internal/Types.scala
src/reflect/scala/reflect/runtime/JavaUniverse.scala
test/files/run/inline-ex-handlers.check
test/files/run/t6223.check
test/files/run/t6223.scala
test/scaladoc/scalacheck/IndexTest.scala
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
... on Java 6 and above.
ForkJoinTaskSupport works on Hotspot, Avian and J9,
while ThreadPoolTaskSupport causes the test
test/files/scalacheck/parallel-collections
to reliably hang on all three.
We keep ThreadPoolTaskSupport around to keep the hope
alive that we still have a glimpse of 1.5 support.
|
|\ \
| | |
| | | |
Iterator.++ no longer blows the stack.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
To my chagrin we still hadn't gotten this one. I took a new
approach which seems like a winner to me. Here's a benchmark:
object Test {
def run(n: Int) = println((1 to n).foldLeft(Iterator.empty: Iterator[Int])((res, _) => res ++ Iterator(1)) sum)
def main(args: Array[String]): Unit = run(args(0).toInt)
}
Runtime before this commit for various n:
500 0.403 real
1000 0.911 real
1500 2.351 real
2000 5.298 real
2500 10.184 real
Runtime after this commit, same n:
500 0.346 real
1000 0.359 real
1500 0.368 real
2000 0.379 real
2500 0.390 real
In the test case I dial it up to 100000.
|
|\ \ \
| |/ /
|/| | |
Name logic consistency
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Sifted through extraneous methods trying to find consistency,
consolidating and deprecating as I went. The original motivation
for all this was the restoration of LOCAL_SUFFIX to originalName,
because:
It looks like in an attempt to make originalName print
consistently with decodedName, I went a little too far and
stripped invisible trailing spaces from originalName. This
meant outer fields would have an originalName of '$outer'
instead of '$outer ', which in turn could have caused them to
be mis-recognized as outer accessors, because the logic of
outerSource hinges upon "originalName == nme.OUTER".
I don't know if this affected anything - I noticed it by
inspection, improbably enough.
Deprecated originalName - original, compared to what? - in
favor of unexpandedName, which has a more obvious complement.
Introduced string_== for the many spots where people have
given up and are comparing string representations of names.
A light dusting of types is still better than nothing.
Editoral note: LOCAL_SUFFIX is the worst. Significant trailing
whitespace! It's a time bomb.
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
The motivation is to provide static warnings
in cases like:
scala> (1, 2) match { case Seq() => 0; case _ => 1 }
res9: Int = 1
|
|\ \
| | |
| | | |
Remove unrecognized doc comments
|
| | |
| | |
| | |
| | |
| | | |
unmoored doc comment" warning when building distribution for
scala itself.
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently bitsets use default isEmpty implementation inherited from
Set, which tests for "size == 0".
Calculating the size of a word in a bitmap requires summing through
all bits set, whereas testing for emptyness needs only one comparison
with zero.
This commit overrides the default implementation with the specialized
one looking for a non-zero word in this bitmap.
|
|\ \
| | |
| | | |
SI-7236 Deprecate ThreadPoolTaskSupport and friends
|
| | | |
|
|\ \ \
| | | |
| | | | |
SI-5513: add inplace set-theoretic operations for mutable bitsets.
|
| |/ / |
|
|\ \ \
| | | |
| | | | |
Optimize RedBlackTree rebalance method by using null optimized list implementation.
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
rebalance method relies heavily on s.c.i.List. By replacing List with null
optimized version, NList, rebalance operation is significantly more faster.
Test indicate +10 % performance improvement for tree sizes >= 100.
Existing tests verify red-black tree invariants, including operations
involving tree rebalance.
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
Removed NotNull from tests and the parentage of AnyVal.
Removed the tests which were actually testing anything to
do with NotNull; massaged the others to forget NotNull and/or
not to name local things NotNull.
|
|\|
| |
| |
| |
| | |
Conflicts:
src/library/scala/collection/mutable/ArrayOps.scala
|
| |\
| | |
| | | |
SI-7215 Fix transpose of an empty Array[Array[T]].
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | | |
Require firstKey and lastKey on IntMap tail-recursive.
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
Changes around lint
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
It's super confusing to see debugging output showing
a type constructor called "Coll". The convention in the
collections is that CC[A] takes type parameters and
Coll is an alias for the applied type.
|
|\ \ \ \ \
| | |_|/ /
| |/| | |
| | | | |
| | | | |
| | | | | |
Conflicts:
src/compiler/scala/tools/nsc/ast/Trees.scala
src/library/scala/concurrent/impl/ExecutionContextImpl.scala
|
| |\ \ \ \
| | |_|_|/
| |/| | | |
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Inlined AdaptedForkJoinTask, made uncaughtExceptionHandler private[this].
This is necessary to maintain binary compatibility with 2.10.0.
|
| | | | |
| | | | |
| | | | |
| | | | | |
This is necessary to maintain binary compatibility with 2.10.0.
|
| | | | |
| | | | |
| | | | |
| | | | | |
This is necessary to maintain binary compatibility with 2.10.0.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Reworks d526f8bd74.
This is necessary to maintain binary compatibility with 2.10.0.
matchName="scala.collection.mutable.MutableList.tailImpl"
problemName=MissingMethodProblem
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Also revert "SI-4664 [Make scala.util.Random Serializable] Add test case"
This reverts commit 0b92073a38f9d1823f051ac18173078bfcfafc8a.
This reverts commit 2aa66bec86fd464712b0d15251cc400ff9d52821.
This is necessary to maintain binary compatibility with 2.10.0.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This reverts commit a557a973608a75c7a02f251bbcf49fe6f6b6655e.
This is necessary to maintain binary compatibility with 2.10.0.
Mima says:
matchName="scala.collection.immutable.Range.head"
problemName=IncompatibleResultTypeProblem
The bridge method appeared because result is now Int, whereas
the super-method's result type erases to Object
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Sorting the attributes of an xml element could drop some of the
attributes. It was caused by the incorrect use of MetaData#copy() to
concatenate "smaller" with the rest of the attributes. The
MetaData#copy() method is similar to the following hypothetical method
on a List:
def copy(other: List): List = head :: other
The fix prepends all elements of "smaller" to the rest of the attributes
in the proper order.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
- @param tags whose name drifted from the corresponding parameter
- Remove or complete a few stray stub comments (@param foo ...)
- Use @tparam where appropriate.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Was: ``blah''
Now: `blah`
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | | |
Use .length directly, avoiding the allocation of the WrappedArray.
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
SI-7015 Removes redundant aconst_null; pop; aconst_null creation
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
In an effort to adapt methods and field accesses of type Null to
other types, we were always emitting
aconst_null
pop
aconst_null
The problem is we were doing that even when the JVM was in a position
to know it had null value, e.g. when the user had written a null
constant. This commit fixes that and includes a test to show that the
resulting byte code still works even without repeating ourselves and/or
repeating ourselves.
This commit also makes the scala.runtim.Null$ constructor private. It
was a sealed abstract class which prevented subclassing in Scala, but
it didn't prevent subclassing in Java. A private constructor takes care
of that hole so now the only value of type Null$ should be null.
Along the way I found some other questionable things in adapt and I've
added TODO's and issue https://issues.scala-lang.org/browse/SI-7159 to
track.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
viktorklang/wip-SI7164-nonfatal-notimplementederror
SI-7164 - Removing NotImplementedError as Fatal from s.u.c.NonFatal
|
| |/ / / / / |
|