summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLukas Rytz <lukas.rytz@epfl.ch>2010-07-09 09:51:06 +0000
committerLukas Rytz <lukas.rytz@epfl.ch>2010-07-09 09:51:06 +0000
commitc66898e5be37d88efd75af76f5a078820ae6c4e0 (patch)
tree448cfcfe93116b9ff2e2620234bb6813276d9b00 /src
parentba975223e8854db866a55f7207ad889327c4100d (diff)
downloadscala-c66898e5be37d88efd75af76f5a078820ae6c4e0.tar.gz
scala-c66898e5be37d88efd75af76f5a078820ae6c4e0.tar.bz2
scala-c66898e5be37d88efd75af76f5a078820ae6c4e0.zip
close #3648.
Diffstat (limited to 'src')
-rw-r--r--src/compiler/scala/tools/nsc/typechecker/Namers.scala4
-rw-r--r--src/compiler/scala/tools/nsc/typechecker/NamesDefaults.scala2
2 files changed, 4 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/Namers.scala b/src/compiler/scala/tools/nsc/typechecker/Namers.scala
index 756863f8f9..ca188099c7 100644
--- a/src/compiler/scala/tools/nsc/typechecker/Namers.scala
+++ b/src/compiler/scala/tools/nsc/typechecker/Namers.scala
@@ -1035,9 +1035,11 @@ trait Namers { self: Analyzer =>
}))
val defRhs = copyUntyped(vparam.rhs)
+ val staticFlag = if (isConstr) STATIC else 0
+
val defaultTree = atPos(vparam.pos.focus) {
DefDef(
- Modifiers(meth.flags & (PRIVATE | PROTECTED | FINAL)) | SYNTHETIC | DEFAULTPARAM | oflag,
+ Modifiers(meth.flags & (PRIVATE | PROTECTED | FINAL)) | SYNTHETIC | DEFAULTPARAM | oflag | staticFlag,
name, deftParams, defvParamss, defTpt, defRhs)
}
if (!isConstr)
diff --git a/src/compiler/scala/tools/nsc/typechecker/NamesDefaults.scala b/src/compiler/scala/tools/nsc/typechecker/NamesDefaults.scala
index f1d0537f46..91fe113019 100644
--- a/src/compiler/scala/tools/nsc/typechecker/NamesDefaults.scala
+++ b/src/compiler/scala/tools/nsc/typechecker/NamesDefaults.scala
@@ -341,7 +341,7 @@ trait NamesDefaults { self: Analyzer =>
*
* Example: given
* def foo(x: Int = 2, y: String = "def")
- * foo(1)
+ * foo(y = "lt")
* the argument list (y = "lt") is transformed to (y = "lt", x = foo$default$1())
*/
def addDefaults(givenArgs: List[Tree], qual: Option[Tree], targs: List[Tree],