summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Remove GenASM, merge remaining common code snippetsSimon Ochsenreither2015-10-2798-4119/+861
| | | | | | | | With GenBCode being the default and only supported backend for Java 8, we can get rid of GenASM. This commit also fixes/migrates/moves to pending/deletes tests which depended on GenASM before.
* Merge pull request #4820 from lrytz/t9535Lukas Rytz2015-10-279-27/+74
|\ | | | | SI-9535 correct bytecode and generic signatures for @throws[TypeParam]
| * SI-9535 correct bytecode and generic signatures for @throws[TypeParam]Lukas Rytz2015-10-269-27/+74
| | | | | | | | | | | | | | For @throws[E] where E is not a class type, GenASM incorrectly writes the non-class type to the classfile. GenBCode used to crash before this commit. Now GenBCode correctly emits the erased type (like javac) and adds a generic signature.
* | Merge pull request #4821 from retronym/review/4817Jason Zaugg2015-10-271-32/+0
|\ \ | | | | | | Remove unneeded overrides from ReplGLobal
| * | Remove unneeded overrides from ReplGLobalSom Snytt2015-10-271-32/+0
| |/ | | | | | | | | | | | | | | | | | | | | | | | | These seem to have been originally added as a basis for future REPL work, for instance moving away from textual code generation to using a custom typechecker to include definitions and imports from previous lines in scope. But until such work is started, lets remove the as-yet-uneeded customizations in the name of simplicity. (Original commits by Som Snytt, extended by Jason Zaugg to remove the custom typer.)
* | Merge pull request #4815 from som-snytt/test/stringcontext-fJason Zaugg2015-10-273-193/+160
|\ \ | | | | | | f interp test is junit
| * | f interp test is junitSom Snytt2015-10-253-193/+160
| |/ | | | | | | | | | | | | Moves test/files/run/stringinterpolation_macro-run.scala to the junit test class test/junit/scala/StringContextTest.scala. Adds a couple of assertions to the test.
* | Merge pull request #4807 from lrytz/opt/innerClassAttrLukas Rytz2015-10-2613-317/+344
|\ \ | |/ |/| Simplify and correctify calculation of the InnerClass attribute
| * Clean up CoreBTypes, consistent names, remove unused entriesLukas Rytz2015-10-2010-190/+136
| |
| * Simplify and correctify calculation of the InnerClass attributeLukas Rytz2015-10-2011-153/+234
| | | | | | | | | | | | | | | | | | | | | | | | | | The InnerClass attribute needs to contain an entry for every nested class that is defined or referenced in a class. Details are in a doc comment in BTypes.scala. Instead of collecting ClassBTypes of nested classes into a hash map during code generation, traverse the class before writing it out to disk. The previous approach was incorrect as soon as the generated bytecode was modified by the optimzier (DCE, inlining). Fixes https://github.com/scala/scala-dev/issues/21.
* | Merge pull request #4802 from SethTisue/merge-2.11-to-2.12-oct-16Lukas Rytz2015-10-2126-88/+264
|\ \ | |/ |/| merge 2.11 to 2.12 Oct 16
| * merge 2.11.x onto 2.12.x, Oct 16 2015Seth Tisue2015-10-1626-88/+264
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | there were merge conflicts in the Eclipse config that I resolved with --ours. I invite @performantdata to submit a followup PR bringing the Eclipse stuff into a good state on 2.12.x. there was a test failure in test/junit/scala/collection/mutable/OpenHashMapTest.scala due to the 2.12 compiler emitting the field backing a private var differently (with an unmangled name). Lukas says the difference is expected, so I just updated the code in the test. there were no other merge conflicts. % git log --decorate --oneline -1 origin/2.11.x | cat ae5f0de (origin/HEAD, origin/2.11.x) Merge pull request #4791 from performantdata/issue/9508 % git log --decorate --oneline -1 origin/2.12.x | cat c99e53e (HEAD -> 2.12.x, origin/2.12.x) Merge pull request #4797 from lrytz/M3-versions % export MB=$(git merge-base 2.12.x origin/2.11.x) % echo $MB 42cafa21f3c4a08c6dd34608278f810b6ec2886f % git log --graph --oneline --decorate $MB...origin/2.11.x | cat * ae5f0de (origin/HEAD, origin/2.11.x) Merge pull request #4791 from performantdata/issue/9508 |\ | * 08dca37 (origin/pull/4791) SI-9508 fix classpaths in Eclipse configuration * | fe76232 Merge pull request #4798 from performantdata/issue/9513 |\ \ | * | 9c97a7f (origin/pull/4798) Suppress unneeded import. | * | 30d704d Document some OpenHashMap internal methods. | * | 1fb32fc SI-9513 decrement "deleted" count in OpenHashMap.put() when slot reused | |/ * | 14f875c Merge pull request #4788 from dk14/patch-1 |\ \ | * | 42acd55 (origin/pull/4788) explicitly specify insertion-order feature in docs | / * | 68ce049 Merge pull request #4771 from som-snytt/issue/9492-here |\ \ | * | f290962 (origin/pull/4771) SI-9492 Line trimming paste | * | bc3589d SI-9492 REPL paste here doc | / * | 9834fc8 Merge pull request #4610 from todesking/spec-implicits-remove-obsolete |\ \ | * | 46009b1 (origin/pull/4610) Add view/context-bound parameter ordering rule | * | 6eba305 Spec: Implicit parameters with context/view bound is allowed since 2.10 | / * | d792e35 Merge pull request #4789 from janekdb/2.11.x-param-names-predicates-operations |\ \ | |/ |/| | * b19a07e (origin/pull/4789) Rename forall, exists and find predicate and operator params. |/ * 648c7a1 Merge pull request #4790 from SethTisue/issue/9501 |\ | * 40d12f1 (origin/pull/4790) SI-9501 link README to Scala Hacker Guide * e0b5891 Merge pull request #4786 from performantdata/issue/9506 * 39acad8 (origin/pull/4786) SI-9506 suppress Scala IDE-generated files in the Eclipse project dirs * 74dc364 SI-9506 suppress Scala IDE-generated files in the Eclipse project dirs % git merge ae5f0de Auto-merging src/repl/scala/tools/nsc/interpreter/ILoop.scala Auto-merging src/library/scala/util/Either.scala Auto-merging src/library/scala/runtime/Tuple3Zipped.scala Auto-merging src/library/scala/runtime/Tuple2Zipped.scala Auto-merging src/library/scala/collection/parallel/ParIterableLike.scala Auto-merging src/library/scala/collection/immutable/ListMap.scala Auto-merging src/library/scala/collection/TraversableLike.scala Auto-merging src/eclipse/test-junit/.classpath CONFLICT (content): Merge conflict in src/eclipse/test-junit/.classpath Auto-merging src/eclipse/scaladoc/.classpath CONFLICT (content): Merge conflict in src/eclipse/scaladoc/.classpath Auto-merging src/eclipse/scala-compiler/.classpath Auto-merging src/eclipse/repl/.classpath CONFLICT (content): Merge conflict in src/eclipse/repl/.classpath Auto-merging src/eclipse/partest/.classpath CONFLICT (content): Merge conflict in src/eclipse/partest/.classpath Auto-merging src/eclipse/interactive/.classpath Auto-merging README.md Automatic merge failed; fix conflicts and then commit the result. % git checkout --ours src/eclipse/partest/.classpath % git checkout --ours src/eclipse/repl/.classpath % git checkout --ours src/eclipse/scaladoc/.classpath % git checkout --ours src/eclipse/test-junit/.classpath % git add -u % emacs test/junit/scala/collection/mutable/OpenHashMapTest.scala % git diff test/junit/scala/collection/mutable/OpenHashMapTest.scala | cat ... - val field = m.getClass.getDeclaredField("scala$collection$mutable$OpenHashMap$$deleted") + val field = m.getClass.getDeclaredField("deleted") ... % git add -u
| | * Merge pull request #4791 from performantdata/issue/9508Lukas Rytz2015-10-158-47/+17
| | |\ | | | | | | | | SI-9508 fix classpaths in Eclipse configuration
| | | * SI-9508 fix classpaths in Eclipse configurationPerformant Data LLC2015-10-128-47/+17
| | | |
| | * | Merge pull request #4798 from performantdata/issue/9513Seth Tisue2015-10-152-1/+60
| | |\ \ | | | | | | | | | | SI-9513 decrement "deleted" count in OpenHashMap.put() when slot reused
| | | * | Suppress unneeded import.Performant Data LLC2015-10-141-2/+2
| | | | |
| | | * | Document some OpenHashMap internal methods.Performant Data LLC2015-10-101-0/+13
| | | | |
| | | * | SI-9513 decrement "deleted" count in OpenHashMap.put() when slot reusedPerformant Data LLC2015-10-102-1/+47
| | | |/
| | * | Merge pull request #4788 from dk14/patch-1Seth Tisue2015-10-141-1/+1
| | |\ \ | | | | | | | | | | explicitly specify insertion-order feature in docs
| | | * | explicitly specify insertion-order feature in docsdk142015-10-061-1/+1
| | | | |
| | * | | Merge pull request #4771 from som-snytt/issue/9492-hereSeth Tisue2015-10-144-16/+83
| | |\ \ \ | | | | | | | | | | | | SI-9492 REPL paste here doc
| | | * | | SI-9492 Line trimming pasteSom Snytt2015-09-272-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use `-` stripmargin character to indicate trim (i.e. remove leading indentation). `<<` looks more like shift left, but is already the standard here doc sequence. Indentation is often mangled by pasting, so trimming normalizes lines for error messages. The entire paste text was already trimmed as a whole. `-Dscala.repl.here` provides a default end string, which is unset unless specified. ``` scala> :pa <- // Entering paste mode (ctrl-D to finish) def g = 10 def f! = 27 -- // Exiting paste mode, now interpreting. <console>:2: error: '=' expected but identifier found. def f! = 27 ^ ```
| | | * | | SI-9492 REPL paste here docSom Snytt2015-09-273-16/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Simple here documentish syntax for REPL paste. This makes it easier to paste a block of script (as opposed to transcript). It also means you won't accidentally ctl-D out of the REPL and then out of SBT and then out of the terminal window. ``` scala> :paste < EOF // Entering paste mode (EOF to finish) class C { def c = 42 } EOF // Exiting paste mode, now interpreting. defined class C scala> new C().c res0: Int = 42 scala> :paste <| EOF // Entering paste mode (EOF to finish) |class D { def d = 42 } EOF // Exiting paste mode, now interpreting. defined class D scala> new D().d res1: Int = 42 scala> :quit ```
| | * | | | Merge pull request #4610 from todesking/spec-implicits-remove-obsoleteSeth Tisue2015-10-141-2/+10
| | |\ \ \ \ | | | | | | | | | | | | | | Spec: Implicit parameters with context/view bound is allowed since 2.10
| | | * | | | Add view/context-bound parameter ordering ruletodesking2015-09-241-0/+10
| | | | | | |
| | | * | | | Spec: Implicit parameters with context/view bound is allowed since 2.10todesking2015-07-081-2/+0
| | | | | | |
| | * | | | | Merge pull request #4789 from janekdb/2.11.x-param-names-predicates-operationsSeth Tisue2015-10-139-71/+86
| | |\ \ \ \ \ | | | |_|_|_|/ | | |/| | | | Rename forall, exists and find predicate and operator params.
| | | * | | | Rename forall, exists and find predicate and operator params.Janek Bogucki2015-10-099-71/+86
| | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Align parameters names to use p for predicates and op for combining operations. Based on #4760. Extended to include, - Tuple2Zipped - Tuple3Zipped - Either The original author was vsalvis.
| | * | | | Merge pull request #4790 from SethTisue/issue/9501Seth Tisue2015-10-071-1/+10
| | |\ \ \ \ | | | | | | | | | | | | | | SI-9501 link README to Scala Hacker Guide
| | | * | | | SI-9501 link README to Scala Hacker GuideSeth Tisue2015-10-061-1/+10
| | | | |_|/ | | | |/| |
| | * | | | Merge pull request #4786 from performantdata/issue/9506Jason Zaugg2015-10-079-0/+18
| | |\ \ \ \ | | | |/ / / | | |/| | | SI-9506 suppress Scala IDE-generated files in the Eclipse project dirs
| | | * | | SI-9506 suppress Scala IDE-generated files in the Eclipse project dirsPerformant Data LLC2015-10-062-0/+4
| | | | | |
| | | * | | SI-9506 suppress Scala IDE-generated files in the Eclipse project dirsPerformant Data LLC2015-10-057-0/+14
| | |/ / /
* | | | | Merge pull request #4801 from lrytz/opt/inlinerCleanupsLukas Rytz2015-10-2016-269/+539
|\ \ \ \ \ | |/ / / / |/| | | | Various cleanups in the Inliner
| * | | | Allow @inline/noinline at callsites (in addition to def-site)Lukas Rytz2015-10-2013-41/+175
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow annotating individual callsites @inline / @noinline using an annotation ascription c.foo(): @inline
| * | | | Correctly handle post-inline requests of non-existing callsitesLukas Rytz2015-10-203-35/+121
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A post-inline request is allowed to refer to a callsite that does not exist anymore because it was alredy inlined while handling some other inline request, or because it was DCE'd.
| * | | | Simplify post inlining requestsLukas Rytz2015-10-206-150/+74
| | | | | | | | | | | | | | | | | | | | Clean up inliner test
| * | | | Rename filter to withFilter in RightBiasedEitherLukas Rytz2015-10-201-3/+3
| | | | |
| * | | | Don't create inline requests for callsites that cannot be inlinedLukas Rytz2015-10-204-71/+197
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When traversing the call graph and collecting inline reqeusts, rule out callsites that we already know cannot be inlined. Note that we cannot perform all necessary checks already at this stage: checks that depend on the callee body (the inlined code) are deferred until the callsite is actually inlined. The reason is that the code may change. Example: @inline final def f = try 1 catch { case _: Throwable => 2 } @inline final def g = f def t = println(g) When collecting inline requests, the body of g invokes the public method f, so g could be inlined into t. However, once f is inlined into g, the body of g contains a try-catch block. Now we cannot inline g into t anymore, because the call stack at the g callsite is non-empty (the stack is cleared when entering a handler).
* | | | Merge pull request #4797 from lrytz/M3-versionsSeth Tisue2015-10-091-3/+3
|\ \ \ \ | | | | | | | | | | Bump starr to 2.12.0-M3
| * | | | Bump starr to 2.12.0-M3Lukas Rytz2015-10-091-3/+3
|/ / / /
* | | | Merge pull request #4787 from lrytz/implicitAmbiguousDocSeth Tisue2015-10-061-7/+7
|\ \ \ \ | | | | | | | | | | Minor fixes to Scaladoc of implicitAmbiguous
| * | | | Minor fixes to Scaladoc of implicitAmbiguousLukas Rytz2015-10-061-7/+7
|/ / / /
* | | | Merge pull request #4784 from lrytz/merge-2.11-to-2.12-oct-5v2.12.0-M3Lukas Rytz2015-10-0534-69/+291
|\ \ \ \ | | | | | | | | | | Merge 2.11 to 2.12 oct 5
| * | | | Merge commit '42cafa2' into merge-2.11-to-2.12-oct-5Lukas Rytz2015-10-050-0/+0
| |\| | |
| | * | | Merge pull request #4782 from performantdata/issue/9502Lukas Rytz2015-10-051-3/+3
| | |\ \ \ | | | | | | | | | | | | SI-9502 Update Eclipse classpaths for scaladoc project.
| | | * | | SI-9502 Update Eclipse classpaths for scaladoc project.Michael2015-10-021-3/+3
| | | | | |
| * | | | | Merge commit 'bb3ded3' into merge-2.11-to-2.12-oct-5Lukas Rytz2015-10-0534-69/+291
|/| | | | | | |/ / / /
| * | | | Merge pull request #4770 from SethTisue/windows-testing-fixesLukas Rytz2015-10-055-17/+37
| |\ \ \ \ | | | | | | | | | | | | get test suite passing on Windows
| | * | | | add missing newline at eof in Scala sourceSeth Tisue2015-09-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this was causing a mysterious compilation failure on Windows. (it may not have been a sufficient cause in itself -- which is why I say "mysterious" -- but in any case, adding the newline made the failure go away. and besides, the newline should be there. so here it is.) (it's tempting to make a big commit that fixes this in every source file. resisting for now)