summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* Fixed several specialization cases.Aleksandar Pokopec2011-02-091-32/+64
|
* Further specialization work.Aleksandar Pokopec2011-02-091-12/+40
|
* Specialization work in progress.Aleksandar Pokopec2011-02-096-14/+62
|
* Improved an error message involving overload+de...Paul Phillips2011-02-092-8/+23
| | | | | | Improved an error message involving overload+default args. Closes #3909, no review.
* Added a system property which disables stack tr...Paul Phillips2011-02-092-8/+17
| | | | | | | | | Added a system property which disables stack trace suppression. (At present it is the very terse -Dscala.control.no-trace-suppression.) This makes zero-output crashes involving things like MissingType significantly less maddening. It would behoove us to have a central naming scheme for such properties. Review by community.
* Some cleanup from investigating #4041, with a c...Paul Phillips2011-02-091-10/+26
| | | | | | Some cleanup from investigating #4041, with a comment instead of a fix for the ticket. Review by rytz in case he sees a good way to fix it.
* [scaladoc] Don't hide AnyRef's methods on the A...Kato Kazuyoshi2011-02-081-8/+15
| | | | | | | [scaladoc] Don't hide AnyRef's methods on the AnyRef page. This issue is reported at http://lampsvn.epfl.ch/trac/scala/ticket/3668. Review by dubochet.
* [scaladoc] Simplify selectors. No review.Kato Kazuyoshi2011-02-081-4/+4
|
* Added compiler crash recovery to the repl.Paul Phillips2011-02-084-55/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | up it will issue some apologies and then replay the session up to the crash line with a new compiler. If you combine this with -Yrich-exceptions then you can induce a crash, see the exact path through the code which led there, and then continue on your merry way as if nothing happened. // say ticket #4188 for example % scala -Yrich-exceptions scala> class A { | object Ding | class B { | (null: Any) match { case _: Ding.type => () } | } | } assertion failed: Trying to access the this of another class: tree.symbol = class $read$$iw$$iw$A, ctx.clazz.symbol = class $read$$iw$$iw$A$B compilation unit:<console> [searching for exception contexts...] [GenICode.scala$tools$nsc$backend$icode$GenICode$ICodePhase$$genLoad] 958: 959: case This(qual) => 960: assert(tree.symbol == ctx.clazz.symbol || tree.symbol.isModuleClass, *961: "Trying to access the this of another class: " + 962: "tree.symbol = " + tree.symbol + ", ctx.clazz.symbol = " + ctx.clazz.symbol + " compilation unit:"+unit) 963: if (tree.symbol.isModuleClass && tree.symbol != ctx.clazz.symbol) { 964: if (settings.debug.value) [GenICode.genLoadQualifier] 1166: tree match { 1167: case Select(qualifier, _) => 1168: genLoad(qualifier, ctx, toTypeKind(qualifier.tpe)) *1169: case _ => 1170: abort("Unknown qualifier " + tree) 1171: } 1172: [...] Attempting session recovery... scala> No review.
* vector concat stubsTiark Rompf2011-02-081-0/+10
|
* Closes #4215. review by oderskyHubert Plociniczak2011-02-081-2/+11
|
* Closes #3986 plus some cleanup. no reviewHubert Plociniczak2011-02-082-4/+6
|
* Made after-type-delay configurable in Eclipse.Martin Odersky2011-02-081-1/+17
|
* New option: Ypresentation-delay, to wait with t...Martin Odersky2011-02-081-0/+1
| | | | | New option: Ypresentation-delay, to wait with typechecking after typing.
* Working on fsc.Paul Phillips2011-02-089-134/+136
| | | | | | | | | for me anyway, with this commit scripts will occasionally reuse a compiler instance, instead of never. Since any tests I write will fail on platforms which aren't mine, there are no tests. I might have to start a platform-specific testing area to break some ice around these huge untested zones. No review.
* redesigned error message handling for presentat...Martin Odersky2011-02-073-40/+43
| | | | | redesigned error message handling for presentation compiler.
* [scaladoc] Tweaks to CSS for comments. No review.Gilles Dubochet2011-02-071-2/+6
|
* Added missing file to last commit.Martin Odersky2011-02-073-3/+41
|
* Towards better error handling in the IDE.Martin Odersky2011-02-076-8/+14
|
* Fixed a history bug with it not starting at the...Paul Phillips2011-02-071-1/+2
| | | | | Fixed a history bug with it not starting at the right index. No review.
* Added all the javap command line options to :ja...Paul Phillips2011-02-073-70/+115
| | | | | Added all the javap command line options to :javap. No review.
* The comment for isCoDefinedWith has long saidPaul Phillips2011-02-071-12/+15
| | | | | | | | | | | Is this symbol defined in the same scope and compilation unit as `that' symbol? But "same scope" was never checked, only "same compilation unit." Presumably other layers of logic kept this from being noticed until now, but it has been crashing sbt. Added check to isCoDefinedWith. Closes #4220, review by odersky.
* Fix for parser regression allowing 0-case match...Paul Phillips2011-02-071-2/+6
| | | | | | Fix for parser regression allowing 0-case match blocks. Closes #4217, no review.
* A bit more work on the symbol trackers.Paul Phillips2011-02-063-31/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | minor inaccuracy, and added flag change tracking as well. Now the left column zone may show any of: * // new symbol F // flags changed O // owner changed Or sometimes the awe-inspiring "FO" as in this example. class A { def foo(unit: String) { def bar(x: String) = x == null } } [[symbol layout at end of lambdalift]] class A#17 constructor A#8017 FO method bar$1#9953 [Owner was method foo#8018, now class A#17] [+private +final +<local>] value x#9954 method foo#8018 value unit#9882 value <local A>#8019 No review.
* Added new option -Yshow-syms.Paul Phillips2011-02-063-1/+151
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | symbols. Specifically, it extracts all the symbols attached to AST nodes, and then prints them hierarchically along with indicators for new symbols and other interesting factoids like disappearing symbols. A small demonstration. Output shown is obviously only a fraction of what is produced. // a.scala class A { Nil foreach println } % scalac -Yshow-syms -uniqid a.scala [[symbol layout at end of selectivecps]] class A#17 constructor A#8019 value <local A>#8020 value $anonfun#10961 <synthetic> value x#10971 <synthetic> [[symbol layout at end of uncurry]] class A#17 constructor A#8019 value <local A>#8020 * anonymous class $anonfun#10993 final <synthetic> * constructor $anonfun#11001 * method apply#10994 final value x#10971 <synthetic> * value <local $anonfun>#10999 No review.
* [scaladoc] "Hide All" should be hide inherited ...Kato Kazuyoshi2011-02-061-0/+1
| | | | | | | [scaladoc] "Hide All" should be hide inherited members, not own. This issue is reported at http://lampsvn.epfl.ch/trac/scala/ticket/3775. review by dubochet.
* Fixed failure to load presentation compiler wit...Martin Odersky2011-02-051-1/+1
| | | | | | Fixed failure to load presentation compiler with sources in the empty package.
* [scaladoc] More faster index filtering.Kato Kazuyoshi2011-02-052-109/+159
|
* [scaladoc] More fixes for broken build. No review.Gilles Dubochet2011-02-041-9/+7
|
* [scaladoc] Scaladoc no longer crashes upon real...Gilles Dubochet2011-02-042-15/+21
| | | | | | [scaladoc] Scaladoc no longer crashes upon realising there is nothing to document. Closes #3928. No review.
* Added logging for compileLate, trying to figure...Iulian Dragos2011-02-041-0/+2
| | | | | | Added logging for compileLate, trying to figure out strange build problems in the IDE. no review.
* [scaladoc] Fixes the way new lines in wiki synt...Gilles Dubochet2011-02-041-3/+3
| | | | | | [scaladoc] Fixes the way new lines in wiki syntax convert to spaces. Closes #3735. No review.
* Added assertion to better diagnose build failures.Martin Odersky2011-02-041-1/+3
|
* [scaladoc] Strings looking like documentation a...Gilles Dubochet2011-02-041-12/+13
| | | | | [scaladoc] Strings looking like documentation attributes ("@something") inside "<pre>" blocks are not treated as attributes (like "{{{" blocks already did). Fixes #4212. No review.
* Presentation compiler yields now to be nicer to...Martin Odersky2011-02-041-0/+12
| | | | | Presentation compiler yields now to be nicer to UI thread.
* [scaladoc] Extends CSS of standard HTML generat...Gilles Dubochet2011-02-041-0/+4
| | | | | | [scaladoc] Extends CSS of standard HTML generator to display emphasied text in italic. Fixes #4185. No review.
* [scaladoc] Scaladoc recognises HTML entities in...Gilles Dubochet2011-02-041-1/+1
| | | | | | | [scaladoc] Scaladoc recognises HTML entities in comments, and leaves them untouched (except in code blocks defined using wiki syntax). Fixes #4184. No review.
* [scaladoc] Tweaks to `Generator` data structure...Gilles Dubochet2011-02-042-9/+15
| | | | | | [scaladoc] Tweaks to `Generator` data structure, and additional documentation. No review.
* After discovering #3376 was fixed I gave in and...Paul Phillips2011-02-041-1/+21
| | | | | | | | After discovering #3376 was fixed I gave in and tried to write a test. Now that the fiddling is over you can write repl tests without creating 5000 streams and settings. Look at test/files/run/bug3376.scala or jvm/interpreter.scala to see. Test case closes #3376, no review.
* Ignore anonymous and synthetic classes when ass...Paul Phillips2011-02-044-33/+48
| | | | | | Ignore anonymous and synthetic classes when assessing the "runtime type" of an object. No review.
* My repl history hasn't been working right for a...Paul Phillips2011-02-0416-89/+277
| | | | | | | | | My repl history hasn't been working right for a while (since about when jline2 was introduced.) Nobody else has said anything so either it's just me or I'm the only one using trunk, but either way I decided I'd rather write some history code than tinker with jline. So this is code to implement the jline history interface. No review.
* Faster interrupts in IDE when parsing.Martin Odersky2011-02-041-0/+1
|
* A couple long-threatened repl features.Paul Phillips2011-02-0311-296/+409
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1) :implicits command. scala> :implicits No implicits have been imported other than those in Predef. scala> import BigDecimal._ import BigDecimal._ scala> class Bippy[T] { implicit def makeMeABippy[U <: T] : Bippy[U] = new Bippy[U] } defined class Bippy scala> val bippy = new Bippy[String] bippy: Bippy[String] = Bippy@4f0bd71c scala> import bippy._ import bippy._ scala> :implicits /* 3 implicit members imported from scala.math.BigDecimal */ /* 3 defined in scala.math.BigDecimal */ implicit def double2bigDecimal(d: Double): scala.math.BigDecimal implicit def int2bigDecimal(i: Int): scala.math.BigDecimal implicit def long2bigDecimal(l: Long): scala.math.BigDecimal /* 1 implicit members imported from Bippy */ /* 1 defined in Bippy */ implicit def makeMeABippy[U <: T]: Bippy[U] 2) This one I will probably have to optionize, but: automatic rebinding to a more specific type, signalled via tab-completion failures. More easily demonstrated than explained. scala> val x: AnyRef = "abc" // does not apply to var/def x: AnyRef = abc scala> x.<tab> asInstanceOf isInstanceOf toString scala> x.<tab> Rebinding stable value x from AnyRef to java.lang.String + asInstanceOf charAt codePointAt codePointBefore codePointCount compareTo compareToIgnoreCase concat contains contentEquals endsWith equalsIgnoreCase getBytes getChars indexOf intern isEmpty isInstanceOf lastIndexOf length matches offsetByCodePoints regionMatches replace replaceAll replaceFirst split startsWith subSequence substring toCharArray toLowerCase toString toUpperCase trim scala> x res0: java.lang.String = abc Who's up for some reviewing? I'm taking volunteers! No review.
* Added an assertion to diagnose a build problem ...Martin Odersky2011-02-032-1/+2
| | | | | Added an assertion to diagnose a build problem better.
* invokeDynamic -> applyDynamicMartin Odersky2011-02-033-3/+3
|
* Switched back to StoreReporter for presentation...Iulian Dragos2011-02-031-2/+2
| | | | | | | | Switched back to StoreReporter for presentation compiler tests. This eats up error messages, but if the output is correct we don't mind a spurious error here and there. Renabled simple presentation compiler tests. no review.
* Enclosing method attributes.Paul Phillips2011-02-032-9/+20
| | | | | | | | | | | | | | have no constructor by the time genjvm rolls around, so NoSymbol emerges. Maybe the author of these two lines was under the impression that isClass == true implies isTrait == false, which it does not. assert(enclClass.isClass) val sym = enclClass.primaryConstructor 2) for reasons unknown the 0-arg constructor was hardcoded as the enclosing constructor, which is the wrong signature in all cases but that one. Closes #4211, review by dragos.
* changed buildStructure to askEnteredTypedMartin Odersky2011-02-024-55/+29
|
* Fixing a spaceleak in the IDE.Martin Odersky2011-02-021-6/+8
|
* 2nd attempt to survive divergent implicits in t...Martin Odersky2011-02-022-12/+12
| | | | | 2nd attempt to survive divergent implicits in the presentation compiler.