summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorLukas Rytz <lukas.rytz@gmail.com>2016-07-05 14:22:00 +0200
committerLukas Rytz <lukas.rytz@gmail.com>2016-08-11 11:36:51 +0200
commit0d2760dce189cdcb363e54868381175af4b2646f (patch)
treedc4aa2565c62189f25d9d89e07262f16718e9c7f /README.md
parent6612ba010b0e70c53550d1e47141c8dc89a55f23 (diff)
downloadscala-0d2760dce189cdcb363e54868381175af4b2646f.tar.gz
scala-0d2760dce189cdcb363e54868381175af4b2646f.tar.bz2
scala-0d2760dce189cdcb363e54868381175af4b2646f.zip
SI-8786 fix generic signature for @varargs forwarder methods
When generating a varargs forwarder for def foo[T](a: T*) the parameter type of the forwarder needs to be Array[Object]. If we gnerate Array[T] in UnCurry, that would be erased to plain Object, and the method would not be a valid varargs. Unfortunately, setting the parameter type to Array[Object] lead to an invalid generic signature - the generic signature should reflect the real signature. This change adds an attachment to the parameter symbol in the varargs forwarder method and special-cases signature generation. Also cleanes up the code to produce the varargs forwarder. For example, type parameter and parameter symbols in the forwarder's method type were not clones, but the same symbols from the original method were re-used.
Diffstat (limited to 'README.md')
-rw-r--r--README.md2
1 files changed, 1 insertions, 1 deletions
diff --git a/README.md b/README.md
index 6ebb453176..ed42eadaaa 100644
--- a/README.md
+++ b/README.md
@@ -134,7 +134,7 @@ codebase and re-compiles too many files, resulting in long build times (check
[sbt#1104](https://github.com/sbt/sbt/issues/1104) for progress on that front). In the
meantime you can:
- Enable "ant mode" in which sbt only re-compiles source files that were modified.
- Create a file `local.sbt` containing the line `(incOptions in ThisBuild) := (incOptions in ThisBuild).value.withNameHashing(false).withAntStyle(true)`.
+ Create a file `local.sbt` containing the line `antStyle := true`.
Add an entry `local.sbt` to your `~/.gitignore`.
- Use IntelliJ IDEA for incremental compiles (see [IDE Setup](#ide-setup) below) - its
incremental compiler is a bit less conservative, but usually correct.