aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/typer/Namer.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2016-09-29 14:00:29 +0200
committerMartin Odersky <odersky@gmail.com>2016-09-29 14:00:52 +0200
commit887a63a3dac0dcbaa7fc07ebb6ccac0dbe515427 (patch)
treef5c0addd467cbf0d6d1ce2ac456dee96cf763eaf /src/dotty/tools/dotc/typer/Namer.scala
parent992c72ee5f2f105d587de20efd3858824fc7e7c8 (diff)
downloaddotty-887a63a3dac0dcbaa7fc07ebb6ccac0dbe515427.tar.gz
dotty-887a63a3dac0dcbaa7fc07ebb6ccac0dbe515427.tar.bz2
dotty-887a63a3dac0dcbaa7fc07ebb6ccac0dbe515427.zip
Make namePos a member of memberDef
That way it can be accessed by other parts which deal with error messages.
Diffstat (limited to 'src/dotty/tools/dotc/typer/Namer.scala')
-rw-r--r--src/dotty/tools/dotc/typer/Namer.scala15
1 files changed, 2 insertions, 13 deletions
diff --git a/src/dotty/tools/dotc/typer/Namer.scala b/src/dotty/tools/dotc/typer/Namer.scala
index a0862ee38..cfd49fd87 100644
--- a/src/dotty/tools/dotc/typer/Namer.scala
+++ b/src/dotty/tools/dotc/typer/Namer.scala
@@ -274,17 +274,6 @@ class Namer { typer: Typer =>
val inSuperCall = if (ctx.mode is Mode.InSuperCall) InSuperCall else EmptyFlags
- /** The position of the name defined by `tree`
- * This is a point position if tree is synthetic, a range position if it comes from source.
- * It might also be that tree does not have a position (for instance when synthesized by
- * a calling chain from `viewExists`), in that case the return position is NoPosition.
- */
- def namePos(tree: MemberDef) =
- if (tree.pos.exists)
- if (tree.mods.is(Synthetic)) Position(tree.pos.point, tree.pos.point)
- else Position(tree.pos.point, tree.pos.point + tree.name.length, tree.pos.point)
- else tree.pos
-
tree match {
case tree: TypeDef if tree.isClassDef =>
val name = checkNoConflict(tree.name.encode).asTypeName
@@ -292,7 +281,7 @@ class Namer { typer: Typer =>
val cls = recordSym(ctx.newClassSymbol(
ctx.owner, name, flags | inSuperCall,
cls => adjustIfModule(new ClassCompleter(cls, tree)(ctx), tree),
- privateWithinClass(tree.mods), namePos(tree), ctx.source.file), tree)
+ privateWithinClass(tree.mods), tree.namePos, ctx.source.file), tree)
cls.completer.asInstanceOf[ClassCompleter].init()
cls
case tree: MemberDef =>
@@ -327,7 +316,7 @@ class Namer { typer: Typer =>
recordSym(ctx.newSymbol(
ctx.owner, name, flags | deferred | method | higherKinded | inSuperCall1,
adjustIfModule(completer, tree),
- privateWithinClass(tree.mods), namePos(tree)), tree)
+ privateWithinClass(tree.mods), tree.namePos), tree)
case tree: Import =>
recordSym(ctx.newSymbol(
ctx.owner, nme.IMPORT, Synthetic, new Completer(tree), NoSymbol, tree.pos), tree)