summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | Fix an inference regression with this.type.Paul Phillips2012-05-091-2/+2
| | | | | | | | | | | | | | | | | | | | Closes SI-5210.
* | | | | Revert recent commits.Paul Phillips2012-05-092-28/+63
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 9b6f51d3ae6ddc6571d3101ea715e25a05aa8adb. This reverts commit b5919100e785df58bde35bb24abe9d60b4da08a2.
* | | | | Restored portion of code removed in a7f68ce32c .Paul Phillips2012-05-092-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A hole in the net discovered by retronym makes me put back the former special casing of module class type inference; there's no reason to get it wrong. It appears that TypeRef(pre1, sym1, Nil) SingleType(pre2, sym2) are not seen as equivalent if they have different prefixes even if the prefixes should be equivalent. For now I'm leaving it; in principle this patch should eventually be reverted after subtyping and/or the representation of singleton types advances to the point that it isn't necessary. Closes SI-5777.
| | | | |
| \ \ \ \
| \ \ \ \
| \ \ \ \
*---. \ \ \ \ Merge commit 'refs/pull/517/head'; commit 'refs/pull/518/head'; commit ↵Paul Phillips2012-05-095-71/+49
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 'refs/pull/519/head'; commit 'refs/pull/520/head' into develop
| | | * | | | | fixed typoDominik Gruntz2012-05-091-1/+1
| | | | | | | |
| | | * | | | | removes redundant hash implementation from BoxesRunTime.javaDominik Gruntz2012-05-092-63/+28
| | | |/ / / /
| | | * | | | Fix for ## inconsistency.Paul Phillips2012-05-081-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Hopefully without slowing things down overmuch. Closes SI-5640.
| | | * | | | fix SI-1247: don't create a thunk for a by-name argument if the argument ↵Johannes Rudolph2012-05-081-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | expression is a Function0 application
| | * | | | | imporved comment related to SI-5178Lukas Rytz2012-05-091-2/+3
| | | |_|/ / | | |/| | | | | | | | | | | | | | | see 9f9932bd20
| * | | | | Fixes SI-5328. Iterator.patched failed when from=0.Josh Suereth2012-05-081-1/+2
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | 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.
* / | | | Fixes SI-5201. Adds flatten to TraversableViewLike.Josh Suereth2012-05-081-0/+2
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| | | |
| \ \ \
*-. \ \ \ Merge commit 'refs/pull/512/head'; commit 'refs/pull/513/head' into developPaul Phillips2012-05-087-46/+46
|\ \ \ \ \ | |_|_|/ / |/| | | |
| | * | | Fixes SI-5564.Aleksandar Prokopec2012-05-081-8/+23
| | |/ / | | | | | | | | | | | | Catching typer errors in specialization.
| * | | Fixed positions in named default applications (no hyperlinking in ↵Iulian Dragos2012-05-084-35/+19
| | | | | | | | | | | | | | | | | | | | | | | | conjunction with implicit arguments). Removed even more code in the presentation compiler testing infrastructure. One less level of indirection, and a top-level object gone!
| * | | Making the locator more robust in the face of weird originals. And changed ↵Martin Odersky2012-05-082-3/+4
| |/ / | | | | | | | | | | | | | | | | | | | | | positions in AnnotationInfo to avoid position-less trees there. Conflicts: src/compiler/scala/tools/nsc/typechecker/Typers.scala
| | |
| \ \
*-. | | Merge commit 'refs/pull/510/head'; commit 'refs/pull/511/head'Paul Phillips2012-05-081-1/+1
|\ \| |
| * | | Appendix. Typo that wasn't covered by the test suite.Hubert Plociniczak2012-05-081-1/+1
| | | |
| | | |
| \ \ \
| \ \ \
| \ \ \
| \ \ \
| \ \ \
*-----. \ \ \ Merge commit 'refs/pull/504/head'; commit 'refs/pull/505/head'; commit ↵Paul Phillips2012-05-08312-3146/+39776
|\ \ \ \ \ \ \ | | | |_|/ / / | | |/| | / / | | |_|_|/ / | |/| | | | 'refs/pull/506/head'; commit 'refs/pull/507/head'; commit 'refs/pull/508/head' into develop
| | | | * | GenASM activated via -target:jvm-1.6 or -target:jvm-1.5-asmMiguel Garcia2012-05-088-8/+3349
| | | | | |
| | | | * | glue ASM <-> GenASM, the only part of scala.tools.asm to maintain manuallyMiguel Garcia2012-05-082-0/+67
| | | | | |
| | | | * | subset of the ASM framework, re-namespaced as scala.tools.asmMiguel Garcia2012-05-0875-0/+27954
| | | | | |
| | | | * | documentation about BasicBlock and InlinerMiguel Garcia2012-05-082-16/+19
| | | | | |
| | | | * | BytecodeWriters can do without the FJBG dependencyMiguel Garcia2012-05-082-23/+30
| | | | | |
| | | | * | overriding rather than pattern matching in icode.OpcodesMiguel Garcia2012-05-081-29/+30
| | |_|/ / | |/| | |
| | | * | Changes scala.math.signum to return negative zeros.Dominik Gruntz2012-05-081-14/+3
| | | | |
| | * | | Part IV of the Lazy Vals Saga: Optimized local vals. That's all folks.Hubert Plociniczak2012-05-083-45/+75
| | | | |
| | * | | Part III of the Lazy Vals Saga: Inliner strikes back. Or at least let's hope ↵Hubert Plociniczak2012-05-075-33/+77
| | | | | | | | | | | | | | | | | | | | it will.
| | * | | Part II of the Lazy Vals Saga: Saving bitmap by the Three Musketeers: Byte, ↵Hubert Plociniczak2012-05-046-39/+83
| | | | | | | | | | | | | | | | | | | | Int and Long. And Boolean (hey, he also deserves some credit!).
| | * | | Part I of the Lazy Vals Saga: Bitmaps are no longer inherited.Hubert Plociniczak2012-05-034-84/+6
| | | | |
| * | | | A little sketchiness in recent commit.Paul Phillips2012-05-081-1/+1
| | |/ / | |/| | | | | | | | | | Retro-reviewing.
| * | | Fix for aliasing bug in reifier.Paul Phillips2012-05-081-9/+10
| | | | | | | | | | | | | | | | Closes SI-5769.
| * | | Merge commit 'refs/pull/491/head' into developPaul Phillips2012-05-071-13/+19
| |\ \ \
| | * | | Fixes SI-5629.Aleksandar Prokopec2012-05-071-13/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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`.
| | | | |
| | \ \ \
| *-. \ \ \ Merge commit 'refs/pull/486/head'; commit 'refs/pull/487/head'; commit ↵Paul Phillips2012-05-079-34/+60
| |\ \ \ \ \ | | |_|/ / / | |/| | | | | | | | | | 'refs/pull/488/head'; commit 'refs/pull/489/head'; commit 'refs/pull/490/head' into develop
| | | * | | minor tag-related fixesEugene Burmako2012-05-078-31/+31
| | | | |/ | | | |/|
| | * / | Fixes SI-5199 through improved API docsHeather Miller2012-05-071-3/+29
| | |/ /
| * | | Merge commit 'refs/pull/479/head'; commit 'refs/pull/480/head'; commit ↵Paul Phillips2012-05-064-10/+60
| |\ \ \ | | |/ / | |/| | | | | | 'refs/pull/481/head'; commit 'refs/pull/482/head'; commit 'refs/pull/483/head'; commit 'refs/pull/484/head'; commit 'refs/pull/485/head' into develop
| | * | Add missing methods to GenTraversableLike.Aleksandar2012-05-064-10/+60
| | | |
| | | |
| | \ \
| *-. \ \ Merge commit 'refs/pull/477/head'; commit 'refs/pull/478/head' into developPaul Phillips2012-05-053-8/+15
| |\ \ \ \
| | | * | | Don't admit primitive arrays as a generic Java varargs param.Jason Zaugg2012-05-053-8/+15
| | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | They were sneaking through as polymorphic Arrays and avoiding boxing. Closes SI-4216
| * | | | Merge commit 'refs/pull/124/head' into developPaul Phillips2012-05-051-9/+10
| |\ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | Conflicts: src/library/scala/util/parsing/combinator/Parsers.scala
| | * | | Fixes SI-4929, with a test to verify.Stephen Judkins2012-01-211-14/+15
| | | | | | | | | | | | | | | | | | | | 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).
| * | | | Working around the VerifyErrors.Paul Phillips2012-05-042-2/+6
| | | | | | | | | | | | | | | | | | | | Since the optimizer seems to have lost its mind.
| * | | | Put corresponds on Iterator.Paul Phillips2012-05-041-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I guess we can look forward to more and more duplication in the collections. I had to cut and paste the doc comment too, or at least I have no idea how to avoid that given the file I took it from was in parallel somewhere.
| * | | | Have ArrayCharSequence reuse its Array.Paul Phillips2012-05-041-5/+20
| | | | | | | | | | | | | | | | | | | | Your know, for performance. Closes SI-5641.
| * | | | Updated Symbol to record classfile origin.Paul Phillips2012-05-049-33/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change should be transparent to anything using sourceFile, unless it was drinking from the inheritance well too deeply. Rather than squander the already allocated field for every ClassSymbol not being compiled from source, I'm now populating it with the file representing the class. This will make a broad range of things easier, like debugging, issuing useful error messages, symbol invalidation, signature verification, you name it. def sourceFile - still returns only source code files def binaryFile - returns only class files def associatedFile - returns whatever is there, if anything Performance: I may be mistaken, but I believe this is a zero-impact change. No new fields are allocated; fields which were null now hold a useful reference. The reference is to a file instance which was already being allocated and already long-lived. Compare error messages: // Version 1 % scalac a.scala error: type _$1 is defined twice // Version 2 % scalac a.scala error: type _$1 is defined twice conflicting symbols both originated in file './foo/package.class' Note: this may be due to a bug in the compiler involving wildcards in package objects one error found Bonus for people who read commit logs. Try this in the repl after starting power mode. ListClass.info.members groupBy (_.associatedFile) foreach { case (k, vs) => println("%s\n %s\n".format(k, vs map (_.defString) mkString "\n ")) }
| * | | | Reluctant surgery on partest.Paul Phillips2012-05-042-112/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now neg tests are treated like all the other tests in terms of grouping, so if you have a negative test which requires more than one pass (like the one enclosed with the next commit) you can actually test it.
| | | | |
| | \ \ \
| | \ \ \
| | \ \ \
| | \ \ \
| | \ \ \
| | \ \ \
| | \ \ \
| *-------. \ \ \ Merge commit 'refs/pull/471/head'; commit 'refs/pull/473/head'; commit ↵Paul Phillips2012-05-047-11/+31
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'refs/pull/474/head'; commit 'refs/pull/475/head'; commit 'refs/pull/476/head' into develop
| | | | | | * | | | Fixes SI-5514.Aleksandar Prokopec2012-05-041-2/+4
| | | | | | | |/ / | | | | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The acceptIf and acceptMatch parsers now check for end of input. Review by moors.
| | | | | * / | | Fixes si-5656.Aleksandar Prokopec2012-05-041-5/+13
| | | | | |/ / /