@@ -2,7 +2,7 @@ package dotty.tools.dotc.quoted
2
2
3
3
import dotty .tools .dotc .ast .tpd
4
4
import dotty .tools .dotc .Driver
5
- import dotty .tools .dotc .core .Contexts .{Context , ContextBase }
5
+ import dotty .tools .dotc .core .Contexts .{Context , ContextBase , FreshContext }
6
6
import dotty .tools .dotc .tastyreflect .TastyImpl
7
7
import dotty .tools .io .{AbstractFile , Directory , PlainDirectory , VirtualDirectory }
8
8
import dotty .tools .repl .AbstractFileClassLoader
@@ -27,7 +27,7 @@ class QuoteDriver extends Driver {
27
27
}
28
28
29
29
val (_, ctx0 : Context ) = setup(settings.compilerArgs.toArray :+ " dummy.scala" , initCtx.fresh)
30
- val ctx = ctx0.fresh.setSetting(ctx0.settings.outputDir, outDir)
30
+ val ctx = setColor( ctx0.fresh.setSetting(ctx0.settings.outputDir, outDir), settings )
31
31
32
32
val driver = new QuoteCompiler
33
33
driver.newRun(ctx).compileExpr(expr)
@@ -50,7 +50,7 @@ class QuoteDriver extends Driver {
50
50
}
51
51
52
52
def withTree [T ](expr : Expr [_], f : (Tree , Context ) => T , settings : Toolbox .Settings ): T = {
53
- val (_, ctx : Context ) = setup(settings.compilerArgs.toArray :+ " dummy.scala" , initCtx.fresh)
53
+ val ctx = setColor( setup(settings.compilerArgs.toArray :+ " dummy.scala" , initCtx.fresh)._2.fresh, settings )
54
54
55
55
var output : Option [T ] = None
56
56
def registerTree (tree : tpd.Tree )(ctx : Context ): Unit = {
@@ -79,6 +79,9 @@ class QuoteDriver extends Driver {
79
79
ictx
80
80
}
81
81
82
+ private def setColor (ctx : FreshContext , settings : Toolbox .Settings ): FreshContext =
83
+ ctx.setSetting(ctx.settings.color, if (settings.color) " always" else " never" )
84
+
82
85
}
83
86
84
87
object QuoteDriver {
0 commit comments