From faba2b7999bf73bf10116b391efbdd751054ead0 Mon Sep 17 00:00:00 2001 From: Martin Odersky Date: Thu, 1 Sep 2016 17:44:27 +0200 Subject: Track Inlined nodes in ctx.source --- src/dotty/tools/dotc/core/Contexts.scala | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'src/dotty/tools/dotc/core') diff --git a/src/dotty/tools/dotc/core/Contexts.scala b/src/dotty/tools/dotc/core/Contexts.scala index 6f9d19c40..ea0ab95e6 100644 --- a/src/dotty/tools/dotc/core/Contexts.scala +++ b/src/dotty/tools/dotc/core/Contexts.scala @@ -18,7 +18,7 @@ import util.Positions._ import ast.Trees._ import ast.untpd import util.{FreshNameCreator, SimpleMap, SourceFile, NoSource} -import typer.{Implicits, ImplicitRunInfo, ImportInfo, NamerContextOps, SearchHistory, TypeAssigner, Typer} +import typer.{Implicits, ImplicitRunInfo, ImportInfo, Inliner, NamerContextOps, SearchHistory, TypeAssigner, Typer} import Implicits.ContextualImplicits import config.Settings._ import config.Config @@ -370,8 +370,12 @@ object Contexts { /** The current source file; will be derived from current * compilation unit. */ - def source: SourceFile = - if (compilationUnit == null) NoSource else compilationUnit.source + def source: SourceFile = { + val file = Inliner.inlinedSource + if (file.exists) file + else if (compilationUnit == null) NoSource + else compilationUnit.source + } /** Does current phase use an erased types interpretation? */ def erasedTypes: Boolean = phase.erasedTypes -- cgit v1.2.3