summaryrefslogtreecommitdiff
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #5507 from viktorklang/wip-SI-10034-√Jason Zaugg2016-11-101-1/+1
|\ | | | | SI-10034: Regression: Make Future.failed(e).failed turn into a success instead of failure
| * Regression: Make Future.failed(e).failed turn into a success instead of failureViktor Klang2016-11-081-1/+1
| |
* | Merge commit 'b9a16c4' into 2.12.xJason Zaugg2016-11-081-0/+6
|\ \ | |/ |/|
| * Merge pull request #5378 from som-snytt/issue/9913Seth Tisue2016-10-261-0/+6
| |\ | | | | | | SI-9913 Lead span iterator finishes at state -1
| | * SI-9913 Lead span iterator finishes at state -1Som Snytt2016-09-051-0/+6
| | | | | | | | | | | | | | | Even if no elements fail the predicate (so that the trailing iterator is empty).
* | | Merge pull request #5469 from adriaanm/java-scan-tailrecAdriaan Moors2016-11-043-0/+18
|\ \ \ | | | | | | | | | | | | | | | | No StackOverflowError in Java doc comment scanning Fixes SI-10020 SI-10027
| * | | Add regression tests for SI-10027Jakob Odersky2016-11-033-0/+18
| | | |
* | | | Merge pull request #5482 from lrytz/sd248-frontendLukas Rytz2016-10-2816-0/+69
|\ \ \ \ | | | | | | | | | | Frontend fixes for scala-dev#248
| * | | | For scala classfiles, only parse the scala signature annotationLukas Rytz2016-10-2810-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Skipping other annotations not only saves some cycles / GC, but also prevents some spurious warnings / errors related to cyclic dependencies when parsing annotation arguments refering to members of the class.
| * | | | SI-7139 test case, fixed by one of the recent commitsLukas Rytz2016-10-273-0/+28
| | | | |
| * | | | Ensure companionClass returns a class, not a type aliasLukas Rytz2016-10-263-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes scala/scala-dev#248, where a type alias reached the backend through this method. This is very similar to the fix for SI-5031, which changed it only in ModuleSymbol, but not in Symbol. The override in ModuleSymbol is actually unnecessary (it's identical), so it's removed in this commit. It was added for unclear reasons in 296b706.
* | | | | Merge pull request #5276 from som-snytt/issue/9750Seth Tisue2016-10-261-28/+74
|\ \ \ \ \ | |/ / / / |/| | | | SI-9750 scala.util.Properties.isJavaAtLeast works with JDK9
| * | | | SI-9750 Spec check major.minor.securitySom Snytt2016-07-211-8/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't assume spec is just major, but allow arbitrary version number for both spec value and user value to check. Only the first three dot-separated fields are considered, after skipping optional leading value "1" in legacy format. Minimal validity checks of user arg are applied. Leading three fields, if present, must be number values, but subsequent fields are ignored. Note that a version number is not a version string, which optionally includes pre and build info, `9-ea+109`.
| * | | | SI-9750 isJavaAtLeast(Int)Som Snytt2016-07-151-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | A good opportunity to simplify the API. Versions are strings, but a spec version is just a number.
| * | | | SI-9750 Tweak tests for what is a numberSom Snytt2016-07-151-21/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Leaves the error string as is, but adds test to show how it looks. Java calls it a version number. `Not a version: 1.9`. Don't strip `1.` prefix recursively. (That was Snytt's fault.)
| * | | | SI-9750 scala.util.Properties.isJavaAtLeast works with JDK9Pavel Petlinsky2016-07-131-17/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The utility method compares javaSpecVersion, which has the form "1.8" previously and "9" going forward. The method accepts "1.n" for n < 9. More correctly, the string argument should be a single number. Supports JEP-223.
* | | | | assorted typo fixes, cleanup, updating of commentsSeth Tisue2016-10-244-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | just in time for Halloween. "boostrap" is definitely the most adorable typo evah -- and one of the most common, too. but we don't want to scare anybody.
* | | | | re-enable (or simplify) various tests now that STARR is bumpedSeth Tisue2016-10-241-206/+185
| | | | |
* | | | | Merge pull request #5466 from dragos/issue/remove-println-SI-8717Lukas Rytz2016-10-212-2/+0
|\ \ \ \ \ | | | | | | | | | | | | Replace println with log calls in BrowsingLoaders
| * | | | | Replace println with log calls in BrowsingLoadersIulian Dragos2016-10-192-2/+0
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | This alternative symbol loader is used in the presentation compiler and may generate output even when the compiler should be silent. See SI-8717 for more context, even though this does not really fix the ticket.
* | | | | Merge pull request #5393 from som-snytt/issue/nowarn-thistype-discardLukas Rytz2016-10-211-0/+6
|\ \ \ \ \ | | | | | | | | | | | | No warn when discarding r.f(): r.type
| * | | | | No warn when discarding r.f(): r.typeSom Snytt2016-09-101-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The paradigm is `def add(x: X): Unit = listBuffer += x`. The value that is discarded is not new information. Also cleans up the recent tweaks to help messaging. Adds newlines in case they ask for multiple helps.
* | | | | | Merge pull request #5400 from sjrd/rewrite-traversablelike-stringprefixSeth Tisue2016-10-201-5/+41
|\ \ \ \ \ \ | | | | | | | | | | | | | | Rewrite TraversableLike.stringPrefix not to blow up code size in Scala.js.
| * | | | | | Rewrite TraversableLike.stringPrefix not to blow up code size in Scala.js.Sébastien Doeraene2016-09-151-5/+41
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The commit 30876fe2dd8cbe657a6cad6b11bbc34f10c29b36 changed `TraversableLike.stringPrefix` to report nicer results for inner classes and method-local classes. The changes included calls to `String.split()`, `Character.isDigit()` and `Character.isUpperCase()`. This was particularly bad for Scala.js, because those methods bring with them huge parts of the JDK (the `java.util.regex.*` implementation on the one hand, and the Unicode database on the other hand), which increased generated code size by 6 KB after minimification and gzip for an application that does not otherwise use those methods. This sudden increase is tracked in the Scala.js bug tracker at https://github.com/scala-js/scala-js/issues/2591. This commit rewrites `TraversableLike.stringPrefix` in a very imperative way, without resorting to those methods. The behavior is (mostly) preserved. There can be different results when `getClass().getName()` contains non-ASCII lowercase letters and/or digits. Those will now be recognized as user-defined instead of likely compiler-synthesized (which is a progression). There still are false positives for ASCII lowercase letters, which cause the `stringPrefix` to be empty (as before). Since the new implementation is imperative anyway, at least I made it not allocate anything but the result `String` in the common case where the result does not contain any `.`.
* | | | | | Merge pull request #5439 from som-snytt/issue/fields-fieldwidthSeth Tisue2016-10-205-5/+5
|\ \ \ \ \ \ | | | | | | | | | | | | | | Shorten fields phase description
| * | | | | | Shorten fields phase descriptionSom Snytt2016-09-305-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makes fields fit the field width, which is fitting. `s/including/add` seems sufficient. Possibly, "synthesize" is an extravagance for "add", but "add" is used previously in that column. Resolve, load, translate, add, synthesize, replace, erase, move, eliminate, remove, generate. Would love to learn a word that says what typer does, if the word "type" is too redundant or overloaded, besides the food metaphor. Also "meat-and-potatoes" implies basic, simple, not fussy or fancy. There are many devices, like the heart or a Ferrari engine, that are fundamental without being unfussy.
* | | | | | | Merge 2.11.x into 2.12.xAdriaan Moors2016-10-201-18/+22
|\ \ \ \ \ \ \ | | |_|_|_|/ / | |/| | | | | | | | | | | | Include PRs #5464, #5467
| * | | | | | Merge pull request #5467 from som-snytt/issue/9832-2.11-cleanupSeth Tisue2016-10-191-18/+22
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | SI-9832 Fix line endings in junit test
| | * | | | | | SI-9832 Fix line endings in junit testSom Snytt2016-10-191-18/+22
| | | | | | | |
| * | | | | | | Merge pull request #5343 from milessabin/topic/si-2712-backportAdriaan Moors2016-10-1829-0/+466
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | SI-2712 Add support for higher order unification
| | * | | | | | | SI-2712 Add support for higher order unificationMiles Sabin2016-08-1529-0/+466
| | | |_|_|_|_|/ | | |/| | | | |
* | | | | | | | Merge 2.11.x into 2.12.xAdriaan Moors2016-10-181-0/+63
|\| | | | | | | | |_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix conflict in #5453: ``` - def help: String = { + override def help: String = { ```
| * | | | | | Merge pull request #5453 from som-snytt/issue/9832-2.11Adriaan Moors2016-10-181-0/+63
| |\ \ \ \ \ \ | | | |/ / / / | | |/| | | | SI-9832 -Xlint:help shows default
| | * | | | | SI-9832 -Xlint:help shows defaultSom Snytt2016-10-111-0/+63
| | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conclude help method with the default list. Extra words are supplied for underscore.
| * | | | | Merge pull request #5345 from milessabin/topic/si-7046-backportAdriaan Moors2016-10-1813-1/+176
| |\ \ \ \ \ | | | | | | | | | | | | | | [nomerge] Partial fix for SI-7046
| | * | | | | Partial fix for SI-7046Miles Sabin2016-08-1513-1/+176
| | |/ / / /
| * | | | | Merge pull request #5341 from milessabin/topci/si-9760-backportAdriaan Moors2016-10-181-0/+18
| |\ \ \ \ \ | | | | | | | | | | | | | | SI-9760 Fix for higher-kinded GADT refinement
| | * | | | | SI-9760 Fix for higher-kinded GADT refinementMiles Sabin2016-08-151-0/+18
| | |/ / / /
| * | | | | Merge pull request #5348 from som-snytt/issue/9841-test-2.11Adriaan Moors2016-10-181-0/+24
| |\ \ \ \ \ | | | | | | | | | | | | | | SI-9841 Regression test for init SO
| | * | | | | SI-9841 Regression test for init SOSom Snytt2016-08-241-0/+24
| | |/ / / / | | | | | | | | | | | | | | | | | | Verifies example behavior in ticket.
| * | | | | Merge pull request #5218 from retronym/ticket/9806Jason Zaugg2016-10-181-0/+18
| |\ \ \ \ \ | | |/ / / / | |/| | | | SI-9806 Fix incorrect codegen with optimizer, constants, try/catch
| | * | | | SI-9806 Fix incorrect codegen with optimizer, constants, try/catchJason Zaugg2016-06-071-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The constant optimizer phase performs abstract interpretation of the icode representation of the progam in order to eliminate dead code. For each basic block, the possible and impossible states of each local variable is computed for both a normal and an exceptional exit. A bug in this code incorrectly tracked state for exception exits. This appears to have been an oversight: the new state was computed at each instruction, but it was discarded rather than folded through the intepreter.
| * | | | | Merge pull request #5236 from som-snytt/issue/triple-backportLukas Rytz2016-07-131-0/+8
| |\ \ \ \ \ | | | | | | | | | | | | | | [nomerge] Avoid triple-quoting triple quotes
| | * | | | | Avoid triple-quoting triple quotesSom Snytt2016-06-171-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The boolean test for triples was inadvertently flipped. Adds test for pretty printed multiline strings
* | | | | | | Merge remote-tracking branch 'origin/2.12.0' into merge/2.12.0-to-2.12.xJason Zaugg2016-10-1425-242/+456
|\ \ \ \ \ \ \
| * | | | | | | Detect clash of mixedin val and existing member.Adriaan Moors2016-10-123-9/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before, we looked only at the result type, which was silly. This was originally motivated by a hack to get to the error about conflicting paramaccessors. The error detection for that can now be formulated more directly. Fixes scala/scala-dev#244
| * | | | | | | Merge pull request #5429 from lrytz/sd224Adriaan Moors2016-10-1115-62/+387
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Default -Xmixin-force-forwarders to true
| | * | | | | | | Test cases for super callsLukas Rytz2016-09-302-0/+308
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Recovered and adapted some test cases for super calls from #5415
| | * | | | | | | Default -Xmixin-force-forwarders to trueLukas Rytz2016-09-309-37/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also eliminates the warning when a mixin forwarder cannot be implemented because the target method is a java-defined default method in an interface that is not a direct parent of the class. The test t5148 is moved to neg, as expected: It was moved to pos when disabling mixin forwarders in 33e7106. Same for the changed error message in t4749.
| | * | | | | | | Explicit SerialVersionUID for all ClassTags / ManifestsLukas Rytz2016-09-301-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Looking at the class hierarchy around ClassTag and Manifest, the only class that had a serialVersionUID is AnyValManifest, where the hierarchy is something like: trait ClassTag // extends Serializable |- class GenericClassTag |- trait Manifest |- class ClassTypeManifest |- class SingletonTypeManifest |- ... |- abstract class AnyValManifest // has SerialVersionUID |- class DoubleManifest |- ... Note that AnyValManifest is an abstract class, so the SerialVersionUID annotation does not help there. This commit adds explicit SerialVersionUID annotations to (hopefully) all subclasses of ClassTag, to make sure they are stable under compatible changes (such as changing -Xmixin-force-forwarders).