summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Test case for overloading resolution during reflection.Martin Odersky2012-04-051-0/+16
|
* Symbol activity tracer.Paul Phillips2012-04-054-2/+181
| | | | | | | I just can't shake the feeling more people should see the things that I see. scalac -Dscalac.debug.syms foo.scala
* Fix for continuations issue with match blocks.Paul Phillips2012-04-053-1/+35
| | | | Don't type pattern trees with annotations still attached.
* Fix for continuations issue.Paul Phillips2012-04-056-14/+77
| | | | | | | | Avoid explicit type arguments which don't conform to bounds where they could be successfully inferred. I had to disable one "neg" test which is no longer neg. Can anyone clue me in as to whether it is important?
* Added Option#fold.Paul Phillips2012-04-043-0/+36
|
* Unify "object Foo" and "Foo.type".Paul Phillips2012-04-044-9/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The source of many bugs over the years is that the first is represented as a TypeRef and the second a SingleType. Over a great period of time I figured out how to shield us from the more obvious bug manifestations, but a recent comment by adriaan jarred me into realizing that we can fix it at the source. This commit changes <:< and =:= to recognize when those two representations are being compared and to treat them as equivalent regardless of which is on the left. The reason I don't quash one representation entirely is that a fair bit of code depends on singleton types having an underlying type which is not the same, and regardless of that it would entail more changes and more risk. The change allows removing the type inference conditions which worried about this, and also fixes SI-4910. scala> val t1 = typeRef(ScalaPackageClass.thisType, NoneModule.moduleClass, Nil) t1: $r.intp.global.Type = None.type scala> val t2 = t1.narrow t2: $r.intp.global.Type = None.type scala> (t1.getClass, t2.getClass) res20: (Class[?0], Class[?0]) forSome { type ?0 <: $r.intp.global.Type; type ?0 <: $r.intp.global.Type } = (class scala.reflect.internal.Types$ModuleTypeRef,class scala.reflect.internal.Types$UniqueSingleType) scala> ((t1 =:= t2, t2 =:= t1, t1 <:< t2, t2 <:< t1)) res21: (Boolean, Boolean, Boolean, Boolean) = (true,true,true,true)
*-. Merge commit 'refs/pull/350/head'; commit 'refs/pull/351/head' into developPaul Phillips2012-04-035-5/+145
|\ \
| | * Added presentation memory leak test.Iulian Dragos2012-04-034-2/+142
| | |
| * | avoid memory leak by avoiding default argAdriaan Moors2012-04-031-3/+3
| | |
* | | Fixed class cast exception thrown when re-initializing maven-ant-tasks.Josh Suereth2012-04-031-1/+3
|/ /
* | Remedies Try/Either signature disparity for source compat. w/ AkkaHeather Miller2012-04-039-118/+197
| |
* | Merge branch 'develop'Paul Phillips2012-04-0221-82/+468
|\ \
| | \
| | \
| | \
| | \
| | \
| | \
| *-----. \ Merge remote-tracking branches 'axel22/feature/future-compat', ↵Paul Phillips2012-04-0271-527/+1301
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | 'dlwh/issues/5632', 'jsuereth/feature/import-jars-from-maven', 'nadezhin/master' and 'axel22/feature/collection-concurrent' into develop
| | | | | * | Merge branch 'master' into feature/collection-concurrentAleksandar Prokopec2012-04-02286-5914/+7990
| | | | | |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/library/scala/collection/JavaConversions.scala src/library/scala/collection/JavaConverters.scala Add one test for concurrent map conversion.
| | | | | * | Add JavaConversions and JavaConverters concurrent.Map support.Aleksandar Prokopec2012-03-282-24/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This required deprecating several old methods for converting ConcurrentMap. Also, several new wrappers were introduced for concurrent.Map. Once we remove ConcurrentMap in 2.11, we can remove its corresponding wrappers and conversions in JavaConversions and JavaConverters.
| | | | * | | SI-5627 BigInt.equals(Number) and BigDecimal.equals(Number) should implement ↵Dmitry Nadezhin2012-04-024-3/+162
| | | | | |/ | | | | |/| | | | | | | | | | | | | equality in mathematical sense
| | | * | | Maven repository dependencies are now added to distributions.Josh Suereth2012-03-312-12/+24
| | | | | |
| | | * | | Build.xml can now resolve artifacts from maven central and use them in the ↵Josh Suereth2012-03-311-2/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | build. * Artifacts are resovled from maven central after the STARR repostiory * All maven dependencies are added to aux.libs (every classpath) * Typesafe config library is added by efault.
| | * | | | Fixes SI-5632 (serialization of large HashTables)David Hall2012-03-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Converts HashTable threshold to long before multiplying by a large value. Test is very slow and requires giving partest more RAM. Rather than committing it, I'm attaching it as a gist. Whoever does the merge is more than welcome to commit it along with this patch… Test: https://gist.github.com/2257703
| * | | | | Remove blocking from execution contexts.Aleksandar Prokopec2012-03-304-26/+54
| | | | | |
| * | | | | Add withFilter and mapTo to futures.Aleksandar Prokopec2012-03-292-31/+32
| | | | | |
* | | | | | Fix for SI-3272.Paul Phillips2012-04-024-23/+48
| |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "References to the type parameters in object-private or object-protected values, variables, or methods (§5.2) of the class are not checked for their variance position." Review by @odersky.
* | | | | Pushed Symbol/Type creation partitioning further.Paul Phillips2012-04-0113-88/+148
| | | | | | | | | | | | | | | | | | | | | | | | | Yet more funnelling of immutable creation-time known information into the identities of symbols and types.
* | | | | More principled unwrapping of types.Paul Phillips2012-04-012-32/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Made generic type unwrapper for use by the many methods which need various types to be transparent with respect to the operation being performed. AnnotatedType, PolyType, NullaryMethodType, and ExistentialType all commonly match this description.
* | | | | Cleaned up "isTupleTypeOrSubtype".Paul Phillips2012-04-016-41/+53
| |_|/ / |/| | | | | | | | | | | | | | | More principled logic for determining if a type is a particular type or a specialized subtype of that type.
* | | | Merge remote-tracking branch 'adriaanm/topic/partialfun' into developPaul Phillips2012-03-3015-227/+342
|\ \ \ \ | |_|/ / |/| | |
| * | | specialization: see outer contexts to fix symbolsAdriaan Moors2012-03-302-2/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this corner case in Duplicators is hit when compiling the new AbstractPartialFunction (which is specialized) under -Yvirtpatmat TODO: why do we need to guard against cx.scope eq null in typers? review by @vladureche
| * | | virtpatmat support for the new partialfunctionAdriaan Moors2012-03-301-13/+54
| | | | | | | | | | | | | | | | | | | | | | | | avoid casting default call in applyOrElse: the result type of the match is always B1, not the result type inferred from typing the cases
| * | | old patmat support for the applyOrElse partial funAdriaan Moors2012-03-303-117/+96
| | | | | | | | | | | | | | | | | | | | | | | | minimal fixes for typedMatchAnonFun so it compiles TODO: support for AbstractTotalFunction (when match is exhaustive)
| * | | a fast, functional PartialFunction implementationPavel Pavlov2012-03-3012-96/+177
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | runtime.AbstractPartialFunction provides a default implementation for the new-style partial function. In principle this class is only subclassed by compiler-generated partial functions arising from matches. Either - the apply method (old-style partialfun) or - the applyOrElse method (current scheme) must be overridden, and the isDefinedAt method implemented. The applyOrElse method implementation is provided to ease the transition from the old scheme, since starr still generates old-style PartialFunctions, but locker's library has the new AbstractPartialFunction. Thus, this implementation is intended as a drop-in replacement for the old partial function, and does not require changes to the compiler. (compiler patches, both for old and new-style pattern matching, follow) - runtime.AbstractPartialFunction is based on PartialFunction.WithDefault Original version of FunctionWithDefault by Odersky (http://article.gmane.org/gmane.comp.lang.scala.internals/4032) - better performance for OrElse#applyOrElse, OrElse#lift, PF.cond - new combinator methods: PF#run, PF#runWith, PF.apply authored by @pavelpavlov, refactored by @adriaanm, review by @paulp
* | | | Tagged builds now display tag version. (maven = canonical).Josh Suereth2012-03-301-18/+34
| | | | | | | | | | | | | | | | | | | | | | | | Conflicts: build.xml
* | | | Fix for regression with inference at arity 21+.Paul Phillips2012-03-302-2/+16
| | | | | | | | | | | | | | | | A classic "off by two" error. Closes SI-4545, SI-5633.
* | | | Fix for string bug in genjvm.Paul Phillips2012-03-301-4/+16
| | | | | | | | | | | | | | | | It's -Ycheck:jvm, not -Ycheck:genjvm. There is no genjvm.
| | | |
| \ \ \
*-. \ \ \ Merge remote-tracking branches 'heathermiller/doc/linking' and ↵Paul Phillips2012-03-3020-242/+259
|\ \ \ \ \ | | | |/ / | | |/| | | | | | | 'axel22/feature/future-compat' into develop
| | * | | Add methods in the Future companion object.Aleksandar Prokopec2012-03-291-2/+107
| | | | |
| | * | | Work on source compatibility between akka and scala futures.Aleksandar Prokopec2012-03-2810-242/+136
| | | | | | | | | | | | | | | | | | | | | | | | | Removed some methods from execution contexts. Changed Awaitable interface.
| * | | | Adds links to parallel collections overview in API docsHeather Miller2012-03-2910-4/+22
| | | | | | | | | | | | | | | | | | | | Now that there's an extensive parallel collections overview on http://docs.scala-lang.org, API comments should link to it ("see also" field). This commit also fixes a couple of broken links on some sequential collection types.
* | | | | Merge pull request #344 from lrytz/classpathFixJosh Suereth2012-03-301-3/+2
|\ \ \ \ \ | |_|_|/ / |/| | | | remove unnecessary classpath entry
| * | | | remove unnecessary classpath entryLukas Rytz2012-03-301-3/+2
|/ / / /
* | | | Cleaning up logging in specialization.Paul Phillips2012-03-293-68/+90
| | | |
* | | | A couple tests for pending.Paul Phillips2012-03-294-0/+62
|/ / /
* | | Revert the lisp test.Paul Phillips2012-03-282-3/+4
| | | | | | | | | | | | The lisp test enjoys the suffering of others.
* | | Never write final fields outside of constructors.Paul Phillips2012-03-289-20/+86
| | | | | | | | | | | | | | | | | | Closes SI-3569, SI-3770. Also threw in experimental -Yoverride-vars. It's not robust.
* | | Revived the lisp test.Paul Phillips2012-03-282-4/+3
|/ / | | | | | | | | | | All hail the lisp test! Closes SI-4579.
* | Merge remote-tracking branch 'jsuereth/remove-sbaz-update-man' into developPaul Phillips2012-03-2711-661/+11
|\ \
| * | Remove sbaz and references from master repository.Josh Suereth2012-03-2711-661/+11
| | |
* | | Merge remote-tracking branch 'axel22/feature/collection-concurrent' into developPaul Phillips2012-03-2717-162/+252
|\ \ \ | | |/ | |/|
| * | Rename ConcurrentTrieMap to concurrent.TrieMap.Aleksandar Prokopec2012-03-2717-162/+252
| | | | | | | | | | | | | | | | | | | | | | | | Introduced the collection.concurrent package and introduced the concurrent.Map trait there. Deprecated the mutable.ConcurrentMap trait. Pending work - introduce the appropriate changes to JavaConversions and JavaConverters.
* | | Workaround for "package is not a value".Paul Phillips2012-03-273-24/+112
| | | | | | | | | | | | | | | | | | Not actually a fix, but when we see a package where a module is expected, it's not a great stretch to try the package object. References SI-5604.
| | |
| \ \
| \ \
| \ \
| \ \
| \ \
| \ \
| \ \
*-------. \ \ Merge remote-tracking branches 'manojo/issue/4488', 'leifwickland/patch-3', ↵Paul Phillips2012-03-2724-71/+261
|\ \ \ \ \ \ \ | |_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'non/si-5609', 'adriaanm/topic/virtpatmat' and 'VladUreche/issue/5373' into develop Conflicts: test/scaladoc/scala/model/CommentFactoryTest.scala