summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | | | Merge pull request #2242 from adriaanm/merge-2.10.xPaul Phillips2013-03-1320-12/+336
|\ \ \ \ \ \ \ \ | | |_|_|_|_|/ / | |/| | | | | | Merge 2.10.x into master
| * | | | | | | Merge 2.10.x into masterAdriaan Moors2013-03-1217-10/+167
| |\ \ \ \ \ \ \ | | | |_|_|_|_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/compiler/scala/reflect/reify/Errors.scala src/compiler/scala/tools/nsc/typechecker/NamesDefaults.scala
| | * | | | | | Merge pull request #2224 from retronym/ticket/7238Adriaan Moors2013-03-113-3/+16
| | |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | SI-7328 Bail out of names/defaults when args are error typed
| | | * | | | | | SI-7328 Bail out of names/defaults if args are error typedJason Zaugg2013-03-093-3/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To avoid a crasher later on with a null type inside a sequence argument.
| | * | | | | | | Merge pull request #2225 from retronym/ticket/7234Adriaan Moors2013-03-113-7/+45
| | |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | SI-7234 Make named args play nice with dep. method types
| | | * | | | | | | SI-7234 Make named args play nice with dep. method typesJason Zaugg2013-03-093-7/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some care is needed to avoid interaction with constant types (e.g pos/z1730.scala) and with existentials (e.g. t3507-old.scala).
| | * | | | | | | | Merge pull request #2221 from scalamacros/ticket/5710Adriaan Moors2013-03-114-0/+32
| | |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | SI-5710 has fixed itself
| | | * | | | | | | | SI-5710 has fixed itselfEugene Burmako2013-03-094-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | My job here is only to submit tests.
| | * | | | | | | | | Merge pull request #2223 from scalamacros/ticket/7235Adriaan Moors2013-03-116-0/+42
| | |\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | reifier is now aware of SI-7235
| | | * | | | | | | | | reifier is now aware of SI-7235Eugene Burmako2013-03-096-0/+42
| | | |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SI-7235 is caused by a long-standing todo in typedRefinement, which leads to originals of compound type trees swallowing their stats. I'm not sure how exactly to fix SI-7235, but what I am sure about is that we shouldn't silently discard stats during reification. This patch introduces a new implementation restrictions, which now reports that reify of compound type trees with non-empty stats isn't going to work.
| | * | | | | | | | | Merge pull request #2228 from retronym/ticket/7226Adriaan Moors2013-03-112-0/+32
| | |\ \ \ \ \ \ \ \ \ | | | |_|_|/ / / / / / | | |/| | | | | | | | SI-7226 Fix inference regression caused by TypeVar equality
| | | * | | | | | | | SI-7226 Fix inference regression caused by TypeVar equality.Jason Zaugg2013-03-092-0/+32
| | |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TypeVars, being mutable creatures, mustn't have structural equality/hashing, otherwise TypeRefs that differ only by having distinct TypeVars as components get wrongly uniqued together. The reported bug showed the disaterous consequences: constraints from the `C?[Int]` in the return type applied to the `?C[?A]` in the parameter list. This commit overrides `equals` and `hashCode` in `TypeVar` to use reference equality. An alternative fix would be to drop the `case`-ness of the class, as was the case before 0cde930b when this regressed.
| | * | | | | | | | Merge pull request #2212 from dragos/fix/SI-7224James Iry2013-03-083-2/+169
| | |\ \ \ \ \ \ \ \ | | | |_|/ / / / / / | | |/| | | | | | | Fix SI-7224.
| * | | | | | | | | Merge 2.10.x into masterAdriaan Moors2013-03-123-2/+169
| |\ \ \ \ \ \ \ \ \ | | | |/ / / / / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/compiler/scala/tools/nsc/typechecker/Typers.scala
| | * | | | | | | | Fix SI-7224.Iulian Dragos2013-03-073-2/+169
| | |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't focus positions assigned to the TypeTree of a parent of a Template when the parent exists in the source. A focused position (instance of `OffsetPosition`) makes it invisible to the presentation compiler when it looks for the innermost enclosing tree of a given position (breaking hyperlinking, for example).
* | | | | | | | | Merge pull request #2246 from paulp/pr/sbtPaul Phillips2013-03-132-3/+5
|\ \ \ \ \ \ \ \ \ | |_|_|_|_|_|/ / / |/| | | | | | | | Update sbt.latest.version to sbt's latest version.
| * | | | | | | | Update sbt.latest.version to sbt's latest version.Paul Phillips2013-03-132-3/+5
|/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | And tweak deprecated stub so it compiles with 0.12.2.
* | | | | | | | Merge pull request #2236 from retronym/ticket/6601-2Paul Phillips2013-03-128-2/+33
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | SI-6601 Close access loophole for value class constructors
| * | | | | | | | SI-6601 Close access loophole for value class constructorsJason Zaugg2013-03-118-2/+33
| | |_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ExtensionMethods marks private constructors of value classes as notPRIVATE before pickling. When the pickler reads the flags of this symbol, the anti-shift mechanism folds this into the regular PRIVATE flag, so the class is pickled as though it was public all along. A seprately compiled client can then call this constructor. To remedy this, we must: - pickle `rawFlags`, rather than `flags`. This is symmetric with unpickling, which sets `rawFlags` with the value it reads. - Add `notPRIVATE` to the flagset `PickledFlags`. We cannot make this change in a minor version, as the pickler and unpickler must agree on `PickledFlags`. I believe that this won't change the size of pickled flags for the majority of symbols (ie, those without the notPRIVATE flag) due to the variable length encoding in `writeLongNat`. This also improves the situation for SI-6608. Reflection and scalap (and, by extension, IntelliJ), no longer will see as public methods that have had their access widened in SuperAccessors (which is done selectively to support inlining under separate compilation.)
* | | | | | | | Merge pull request #2240 from paulp/pr/warn-forward-referencePaul Phillips2013-03-124-0/+68
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | | Warn about locally identifiable init order issues.
| * | | | | | | Warn about locally identifiable init order issues.Paul Phillips2013-03-124-0/+68
| | |_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This warns about a subset of initialization order issues which can easily be identified by inspection, such as val x = y val y = 5 The likelihood of this formulation being intentional is miniscule.
* | | | | | | Merge pull request #2241 from adriaanm/eclipse-replAdriaan Moors2013-03-124-0/+51
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | update eclipse projects (partest, repl & scaladoc)
| * | | | | | | update eclipse projects (partest, repl & scaladoc)Adriaan Moors2013-03-124-0/+51
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since we've removed scala.annotations.serializable in 2.11, you'll need to following bandaid to use eclipse on master. This is the easiest fix, but certainly not recommended in general. ``` --- i/src/eclipse/scala-library/.classpath +++ w/src/eclipse/scala-library/.classpath @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <classpath> <classpathentry kind="src" path="library"/> - <classpathentry kind="con" path="org.scala-ide.sdt.launching.SCALA_CONTAINER"/> + <classpathentry exported="true" kind="con" path="org.scala-ide.sdt.launching.SCALA_CONTAINER"/> ``` This corresponds to checking the export check box for the scala library jar in the library's build path.
* | | | | | | Merge pull request #2238 from adriaanm/pr-2206-rebasedAdriaan Moors2013-03-1210-44/+267
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | [rebase of #2206] l JSR-223 compliance for the interpreter
| * | | | | | SI-874 actual JSR-223 implementationRaphael Jolly2013-03-117-29/+177
| | | | | | |
| * | | | | | SI-874 reflect.io improvementsRaphael Jolly2013-03-113-15/+90
| | | | | | |
* | | | | | | Merge pull request #2231 from retronym/topic/ide-configAdriaan Moors2013-03-119-0/+190
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Topic/ide config
| * | | | | | | Add eclipse projects for interactive, scaladoc.Jason Zaugg2013-03-104-0/+89
| | | | | | | |
| * | | | | | | IntellIiJ module definitions for scaladoc, interactive and continuations-*.Jason Zaugg2013-03-105-0/+101
| | |/ / / / / | |/| | | | |
* | | | | | | Merge pull request #2237 from som-snytt/topic/slurpeeAdriaan Moors2013-03-111-1/+4
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | Close after slurping (fixes SI-7244)
| * | | | | | Close after slurping (fixes SI-7244)Som Snytt2013-03-111-1/+4
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since slurp by definition is the noise made by the straw when the cup is empty and all milk shake is consumed, we can safely close after slurping. Use case was deleting a test artifact on Windows.
* | | | | | Merge pull request #2229 from srinivasreddy/masterAdriaan Moors2013-03-111-1/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | A small typo corrected
| * | | | | | a typo correctedsrinivasreddy2013-03-101-1/+1
| | |_|_|_|/ | |/| | | |
* | | | | | Merge pull request #2232 from paulp/pr/modularize-replAdriaan Moors2013-03-1160-811/+823
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | Modularized the repl.
| * | | | | Modularized the repl.Paul Phillips2013-03-1160-811/+823
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Following in the footsteps of scaladoc and interactive. The interpreter sources move into src/repl, and are given a separate build target. As with the others, at present they are still packaged into scala-compiler.jar. A summary of changes: - repl requires use of ReplGlobal (this was already implied) - macro code's repl-specific classloader hack pulled into overridable method and overridden in ReplGlobal - removed -Ygen-javap option to eliminate backend's dependency on javap - removed -Yrepl-debug option (can still be enabled with -Dscala.repl.debug) - pushed javap code into src/repl so javax.tools dependency can bee weakened to the repl only - removed some "show pickled" related code which hasn't worked right in a while and isn't the right way to do it anymore anyway. Will return to fix showPickled and provide it with some tests.
* | | | | Merge pull request #2201 from retronym/topic/types-break-down-squashAdriaan Moors2013-03-107-2649/+2732
|\ \ \ \ \ | | | | | | | | | | | | Carve up Types.scala
| * | | | | Carve up Types.scalaJason Zaugg2013-03-057-2649/+2732
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Step one of a plan to bring some order and thread safety to this neck of the woods. More info: https://gist.github.com/retronym/5081754 https://groups.google.com/forum/?fromgroups=#!topic/scala-internals/MOvmcnbyb_g Note that the sub package is named 'tpe' and not 'Types' to avoid potential problems on case insensitive file systems, given the existing trait 'Types.'
* | | | | | Merge pull request #2226 from adriaanm/pr-2208-reworkAdriaan Moors2013-03-10174-688/+842
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | [rework] Modularized scaladoc and presentation compiler.
| * | | | | Deprecated custom ant task 'Same'.Paul Phillips2013-03-092-3/+1
| | | | | |
| * | | | | Eliminated all forInteractive/forScaladoc uses.Paul Phillips2013-03-0917-100/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the commit which brings it all together. The booleans forInteractive and forScaladoc are now deprecated and are not inspected for any purpose. All behavioral changes formerly accomplished via tests of those flags are embodied in the globals built specifically for those tasks.
| * | | | | Moved interactive code into src/interactive.Paul Phillips2013-03-092-3/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As with scaladoc, pushes presentation compiler specific code into its separate source area.
| * | | | | Moved scaladoc code into src/scaladoc.Paul Phillips2013-03-0914-223/+340
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This leverages the preceding several commits to push scaladoc specific code into src/scaladoc. It also renders some scanner code more comprehensible.
| * | | | | Give interactive tests their own target.Paul Phillips2013-03-091-14/+19
| | | | | | | | | | | | | | | | | | | | | | | | % ant test.interactive
| * | | | | Give partest its own classpath in build.xml.Paul Phillips2013-03-091-21/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Separate from (and larger than) pack.classpath. Then take the opportunity to lower the comic/tragic level of duplication in build.xml.
| * | | | | Teach partest the magic of abstraction.Paul Phillips2013-03-093-34/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some new partest abilities which were necessary to deal with additional standard jars. These new abilities aren't yet put to the test because scaladoc and interactive are still going into the compiler jar. No longer need each jar or classes directory be named directly for partest to find them.
| * | | | | Moved interactive sources into separate directory.Paul Phillips2013-03-0925-1/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As with the preceding commit, this has build-internal effects only.
| * | | | | Moved scaladoc sources into separate directory.Paul Phillips2013-03-09123-5/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change is not externally visible. It moves the scaladoc sources into src/scaladoc and adds an ant target for building them. The compilation products are still packaged into scala-compiler.jar as before, but with a small change to build.xml a separate jar can be created instead.
| * | | | | Enabling commit for interactive/scaladoc modules.Paul Phillips2013-03-0914-97/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a non-behaviorally-changing setup commit which re-routes bits of code through avenues which can more easily be influenced by subclasses of Global.
| * | | | | Bring some sanity to the stability test.Paul Phillips2013-03-092-195/+62
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is no reason to be stability testing every piece of bytecode we've ever encountered. If the compilation products are unstable, then testing 20,000 classfiles will reveal it. Or it won't; either way, we can stop there. So I cut a gordian knot and focused the stability test solely on the contents of: library reflect compiler Next I cut the "custom ant task" cord. There's a tool for diffing files, it's decades old, it's called diff. It does the entire job we need. If it doesn't work on windows, it doesn't matter. The stability test is not something which needs to run in every environment. Either the classfiles are stable or they aren't. Generated the ant xml for building quick.{lib,reflect,comp} and strap.{lib,reflect,comp} so they are identical modulo the compiler used to build them, probably for the first time ever. I'm sure they won't stay that way, but it's a step.
* | | | | Merge pull request #2217 from JamesIry/master_7006bJames Iry2013-03-081-3/+3
|\ \ \ \ \ | | | | | | | | | | | | SI-7006 Fix the unreachable test