summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Overrides immutable.{ Map, Set, Seq } to return...Paul Phillips2010-12-034-0/+15
| | | | | | | Overrides immutable.{ Map, Set, Seq } to return self on the corresponding toMap/toSet/toSeq. Closes #3953, review by prokopec.
* Generalizes catch blocks to include any Partial...Paul Phillips2010-12-036-14/+86
| | | | | | | | | | | | | | | | | | | Generalizes catch blocks to include any PartialFunction[Throwable, T]. Existing catch blocks will compile exactly as before. Anything else (which mean: the token after CATCH is not a left brace, or it is a left brace not immediately followed by CASE) is desugared as follows: try body catch expr // becomes try body catch { case x => val catchFn = expr if (catchFn isDefinedAt x) catchFn(x) else throw x } Review by odersky.
* Added missing file for delayed initMartin Odersky2010-12-021-0/+12
|
* Restore id adapt for phases after refChecked (a...Eugene Vigdorchik2010-12-021-1/+1
| | | | | | Restore id adapt for phases after refChecked (and fix Eclipse builder as a side effect). Try to fix sbt build. No review.
* It's a big one!Paul Phillips2010-12-0250-951/+1063
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TermName and TypeName are exposed throughout the compiler based on what kind of name a given abstraction ought to have. (There remain places where one needs to create a name without knowing yet what it will be, and those will always be Names.) The nme object in the compiler now holds only term names. To reference a known type name, use tpnme: nme.List == ("List": TermName) tpnme.List == ("List": TypeName) The contents of nme and tpname are defined in traits, many of which are shared, so if a name should exist only as a Type and not a Term, it should be defined in CompilerTypeNames, but otherwise in CompilerTermNames or CompilerCommonNames. This is partially complete but I'm sure there are still many shared which should pick a side. Usage of .toTermName and .toTypeName is strongly discouraged. After the dust has settled, there will be very few places where it will make sense to hop between namespaces like that. There are some implicits to smooth everything out, most of which should be removable eventually. // these two are in no hurry to go anywhere String => TermName String => TypeName // but not String => Name: def view in the compiler is no longer implicit // these two are temporary, and can log when they kick off to help us flush // out remaining issues of "name migration" Name => TermName Name => TypeName There is more work to be done before we're properly protected from naming errors, but I will not allow another eight hour tragedy to befall lukas or anyone else! Review by rytz. (Formality.)
* added -jar option to scala interpretermichelou2010-12-023-15/+64
|
* minor update (detach examples)michelou2010-12-023-7/+12
|
* In r23627 Lukas fixed specialization bug that s...Hubert Plociniczak2010-12-021-1/+1
| | | | | | | | In r23627 Lukas fixed specialization bug that seemed to be the reason for #3993 and other specialization and resident compiler bugs. So reverting quick fix r23576 as it is not necessary anymore. No review. Closes #3993.
* fixed typoMartin Odersky2010-12-021-1/+1
|
* Reverted delayed init because of two failing testsMartin Odersky2010-12-021-87/+5
|
* delayed init now supportedMartin Odersky2010-12-026-6/+130
|
* Some cruft which finally got on my nerves enoug...Paul Phillips2010-12-012-47/+38
| | | | | | | | Some cruft which finally got on my nerves enough to decruft. No more getClass2 and getModule2 uses in Definitions, since that transition was completed in the time of my grandpappy. (The implementations remain, quiescent.) No review.
* A patch authored by martin to fix one of the bi...Paul Phillips2010-12-017-751/+7
| | | | | | | | | | | | | A patch authored by martin to fix one of the big outstanding issues with -Ycheck. The typer had a vision of the world which fell to pieces if presented with a tree from after phase constructors. Now it is wiser: perhaps a bit sadder as well, but every typer must face this day sooner or later. Also removed the various passing tests from test/checker-tests, but still plenty of fascinating failures in there for anyone interested in helping push to the finish line! No review.
* More fiddling with checkSensible.Paul Phillips2010-12-016-33/+51
| | | | | | | | | | warnings. Fixed some bugs revealed by said warnings, and made some minor changes to avoid warnings. (Technically it's not a bug to have unrelated classes compare as equal, but it so often is a bug that it behooves us not to do it intentionally so the warnings stand out.) Disabled the most useful warning for the moment since it'd be wrong with some frequency. No review.
* Bug in ListMap. Closes #4046, no review.Paul Phillips2010-12-011-1/+1
|
* Disabled test after failing to read linux's mind.Paul Phillips2010-12-012-0/+0
|
* Taking retronym's advice on increasing Universa...Paul Phillips2010-12-011-2/+4
| | | | | | Taking retronym's advice on increasing UniversalFn transparency. No review.
* Some collections overrides for more efficient t...Paul Phillips2010-12-014-7/+25
| | | | | | Some collections overrides for more efficient toSeq and toBuffer where possible. Closes #2972, review by malayeri.
* Attempt to fix failing test. No review.Paul Phillips2010-11-301-3/+4
|
* Parser relaxation so that one can name the type...Paul Phillips2010-11-303-15/+24
| | | | | | | Parser relaxation so that one can name the type variables in a constructor pattern match: this is a prerequisite to realizing the full potential of gadts. (Nothing new works here however.) No review.
* Found several minor thigns wrong with checkSens...Paul Phillips2010-11-305-45/+80
| | | | | | | Found several minor thigns wrong with checkSensible, which tries to issue warnings for comparisons which will always be true or false. No review.
* Deprecated the @serializable annotation, introd...Lukas Rytz2010-11-3083-248/+258
| | | | | | | | | | | | | | | | | | | Deprecated the @serializable annotation, introduce a new trait "scala.Serializable" which has to be extended instead (cross-platform). Known issues: - Companion objects of serializable classes (including case classes) are automatically made serializable. However, they don't extend "Serializable" statically because of the known difficulty (should be done before typing, but hard). - Writing "case class C() extends Serializable" gives "error: trait Serializable is inherited twice" - Functions are serializable, but don't extend Serializable dynamically (could be fixed by making FunctionN Serializable - shouldn't we?) Note that @SerialVersionUID continues to be an annotation; it generates a static field, which is not possible otherwise in scala. Review by dragos, extempore. Question to dragos: in JavaPlatform.isMaybeBoxed, why is there a test for "JavaSerializableClass"? Is that correct?
* It looks like the fix for #2318 was causing pro...Paul Phillips2010-11-305-4/+53
| | | | | | | It looks like the fix for #2318 was causing problems, so I gave it some more graceful failure. Leaving #2318 open because the implementation could still work harder to find the right method. No review.
* The initial implementation of TraversableOnce c...Paul Phillips2010-11-2922-79/+87
| | | | | | | | | | | | | | | | | | The initial implementation of TraversableOnce could not supply concrete methods or even signatures for map and flatMap because they have different signatures in Iterator and TraversableLike. But we can take another approach which works out as nicely: 1) Create implicits which install those methods and flatten on TraversableOnce instances. 2) Generalize the signatures of flatten and flatMap to work with A => TraversableOnce[B] instead of A => Traversable[B]. And voila, you can mix and match Iterators and Traversables in a for comprehension, map, flatMap, and flatten, without the tedious process of sprinkling .iterator or .toList around to appease the compiler. No review.
* Fleshed out Equiv[T] so that it can be used in ...Paul Phillips2010-11-291-26/+43
| | | | | | Fleshed out Equiv[T] so that it can be used in a manner similar to Ordering[T]. No review.
* "I invite everyone to change this rule, and obs...Paul Phillips2010-11-297-34/+33
| | | | | | | | | | | | | | | | | | | | | "I invite everyone to change this rule, and observe what breaks!" This much beloved comment from #1208 has been on my radar for two years. The worm has turned. Closes #1208. The inferred type of an object is now Foo.type instead of "object Foo". What once was this: scala> val x: Map[Int, Singleton] = Map(1 -> None) <console>:5: error: type mismatch; found : (Int, object None) required: (Int, Singleton) Now exudes a pleasing aura of workingness: scala> val x: Map[Int, Singleton] = Map(1 -> None) x: Map[Int,Singleton] = Map(1 -> None) No review.
* Adding some more unwrapping to unwrap. No review.Paul Phillips2010-11-281-2/+9
|
* Did some more polishing on the infamous partial...Paul Phillips2010-11-283-4/+9
| | | | | | Did some more polishing on the infamous partial function error message. No review.
* Moved sigint handler to InterpreterLoop and mad...Paul Phillips2010-11-284-17/+35
| | | | | | Moved sigint handler to InterpreterLoop and made it discriminate based on contents of current line. No review.
* Test case closes #3106, no review.Paul Phillips2010-11-281-0/+7
|
* Fleshed out the mock code a little further so i...Paul Phillips2010-11-284-1/+103
| | | | | | | | | | | | | | | | | | | Fleshed out the mock code a little further so it's easy for closures to become SAMs. // implicit not necessary, but improves fun factor scala> implicit def mkUFn(x: AnyRef) = scala.tools.reflect.UniversalFn(x) mkUFn: (x: AnyRef)scala.tools.reflect.UniversalFn scala> (() => 5*5*5).as[java.util.concurrent.Callable[Int]] res1: java.util.concurrent.Callable[Int] = <function1> scala> res1.call res2: Int = 125 No review.
* Some hardening of the repl's internals extracte...Paul Phillips2010-11-276-58/+98
| | | | | | Some hardening of the repl's internals extracted from a more interesting patch in progress. No review.
* Followed up on the claim that wrapArray can be ...Paul Phillips2010-11-271-13/+1
| | | | | Followed up on the claim that wrapArray can be removed. No review.
* Some cleanups in the *Runners and a few compile...Paul Phillips2010-11-277-17/+38
| | | | | | Some cleanups in the *Runners and a few compiler I/O conveniences. No review.
* Refactored parallel collections for pluggable t...Aleksandar Pokopec2010-11-2715-62/+65
| | | | | | | | Refactored parallel collections for pluggable task support implementations. No review.
* Temporarily disabled varargs annotation on cons...Aleksandar Pokopec2010-11-271-7/+8
| | | | | | | Temporarily disabled varargs annotation on constructors. No review.
* Today's Bourne Shell Ultimatum. No review.Paul Phillips2010-11-272-2/+2
|
* The usual flailing associated with changing a s...Paul Phillips2010-11-272-6/+6
| | | | | | The usual flailing associated with changing a shell script and using too recent a feature. Hopefully unbreaks build, no review.
* Moved the painful-in-ant git/svn revision getti...Paul Phillips2010-11-263-23/+59
| | | | | | | | | Moved the painful-in-ant git/svn revision getting logic into bash where it's at least somewhat less painful. Made it more flexible for easy use in more places since we presently have all kinds of revision figuring logic variations in other build files (sbaz, installer, scala-documentation, scala-tool-support, etc.) No review.
* Some work on error messages, somewhat based on ...Paul Phillips2010-11-267-21/+72
| | | | | | Some work on error messages, somewhat based on ideas in #3092. No review.
* Seeing if I can unbreak things without actually...Paul Phillips2010-11-263-35/+29
| | | | | | Seeing if I can unbreak things without actually removing the visible motivation for the whole exercise. No review.
* Making the installation of the repl sigint hand...Paul Phillips2010-11-263-8/+25
| | | | | | | Making the installation of the repl sigint handler take place less eagerly. And more relevantly to recent hangs, made the repl only create daemon threads. No review.
* A new totally safe signal manager, along with a...Paul Phillips2010-11-2611-80/+407
| | | | | | | | | | | | | | | | | | | A new totally safe signal manager, along with all the support code needed for that. See the classes in scala.tools.reflect.* for interesting new weapons. Also includes inaugural handy usage: scala> val x = 10 x: Int = 10 scala> while (true) () [ctrl-C] Execution interrupted by signal. scala> x res1: Int = 10 No review, but feedback welcome.
* A manifest init order issue motivates some shuf...Paul Phillips2010-11-262-37/+34
| | | | | | A manifest init order issue motivates some shuffling around and making confusing identifiers more explicit. No review.
* Disabled possibly failing test.Aleksandar Pokopec2010-11-261-0/+4
| | | | | No review.
* Changes to the vector class that will be needed...Aleksandar Pokopec2010-11-261-1/+10
| | | | | | | Changes to the vector class that will be needed for ParVector. Review by Rompf.
* You shall not pass the testing stage when abort...Hubert Plociniczak2010-11-261-2/+2
| | | | | | | You shall not pass the testing stage when abort crashes the resident compiler. previously it succeeded even though the error message was printed. Review by phaller
* Adapt nested objects properly.Hubert Plociniczak2010-11-261-5/+4
|
* I keep forgeting which phase the browser is cur...Hubert Plociniczak2010-11-264-9/+8
| | | | | | I keep forgeting which phase the browser is currently showing, so added phase name. No review
* Further work on #3621.Aleksandar Pokopec2010-11-261-9/+9
| | | | | No review.