summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/typechecker/Typers.scala
diff options
context:
space:
mode:
authorSom Snytt <som.snytt@gmail.com>2012-03-21 16:02:21 -0700
committerSom Snytt <som.snytt@gmail.com>2012-03-23 12:13:11 -0700
commit47bfd744177121de08fed489a5b0b1b59a1ae06a (patch)
tree628d19292c3596a94eda799b5583b99af494d44a /src/compiler/scala/tools/nsc/typechecker/Typers.scala
parente2951867f51bf464b07f759662bfc50dfaf48e5b (diff)
downloadscala-47bfd744177121de08fed489a5b0b1b59a1ae06a.tar.gz
scala-47bfd744177121de08fed489a5b0b1b59a1ae06a.tar.bz2
scala-47bfd744177121de08fed489a5b0b1b59a1ae06a.zip
Ctor default-getters unique name and are typed in constructor context
Diffstat (limited to 'src/compiler/scala/tools/nsc/typechecker/Typers.scala')
-rw-r--r--src/compiler/scala/tools/nsc/typechecker/Typers.scala4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/Typers.scala b/src/compiler/scala/tools/nsc/typechecker/Typers.scala
index ad48712a32..c3a7453df0 100644
--- a/src/compiler/scala/tools/nsc/typechecker/Typers.scala
+++ b/src/compiler/scala/tools/nsc/typechecker/Typers.scala
@@ -4399,7 +4399,9 @@ trait Typers extends Modes with Adaptations with PatMatVirtualiser {
typedValDef(vdef)
case ddef @ DefDef(_, _, _, _, _, _) =>
- newTyper(context.makeNewScope(tree, sym)).typedDefDef(ddef)
+ // flag default getters for constructors. An actual flag would be nice. See SI-5543.
+ val flag = ddef.mods.hasDefaultFlag && nme.defaultGetterToMethod(sym.name) == nme.CONSTRUCTOR
+ newTyper(context.makeNewScope(tree, sym)).constrTyperIf(flag).typedDefDef(ddef)
case tdef @ TypeDef(_, _, _, _) =>
typedTypeDef(tdef)