@@ -70,8 +70,6 @@ class Global(var currentSettings: Settings, var reporter: Reporter)
70
70
def this (settings : Settings ) =
71
71
this (settings, new ConsoleReporter (settings))
72
72
73
- def mkAttributedQualifier (tpe : Type , termSym : Symbol ): Tree = gen.mkAttributedQualifier(tpe, termSym)
74
-
75
73
def picklerPhase : Phase = if (currentRun.isDefined) currentRun.picklerPhase else NoPhase
76
74
77
75
// platform specific elements
@@ -265,15 +263,10 @@ class Global(var currentSettings: Settings, var reporter: Reporter)
265
263
266
264
def informComplete (msg : String ): Unit = reporter.withoutTruncating(inform(msg))
267
265
def informProgress (msg : String ) = if (settings.verbose.value) inform(" [" + msg + " ]" )
268
- def inform [T ](msg : String , value : T ): T = returning(value)(x => inform(msg + x))
269
266
def informTime (msg : String , start : Long ) = informProgress(elapsedMessage(msg, start))
270
267
271
268
def logError (msg : String , t : Throwable ): Unit = ()
272
269
273
- def logAfterEveryPhase [T ](msg : String )(op : => T ) {
274
- log(" Running operation '%s' after every phase.\n " .format(msg) + describeAfterEveryPhase(op))
275
- }
276
-
277
270
override def shouldLogAtThisPhase = settings.log.isSetByUser && (
278
271
(settings.log containsPhase globalPhase) || (settings.log containsPhase phase)
279
272
)
@@ -419,8 +412,8 @@ class Global(var currentSettings: Settings, var reporter: Reporter)
419
412
}
420
413
421
414
/** Switch to turn on detailed type logs */
422
- var printTypings = settings.Ytyperdebug .value
423
- var printInfers = settings.Yinferdebug .value
415
+ val printTypings = settings.Ytyperdebug .value
416
+ val printInfers = settings.Yinferdebug .value
424
417
425
418
// phaseName = "parser"
426
419
object syntaxAnalyzer extends {
@@ -638,13 +631,6 @@ class Global(var currentSettings: Settings, var reporter: Reporter)
638
631
}
639
632
}
640
633
641
- // phaseName = "SAMPLE PHASE"
642
- object sampleTransform extends {
643
- val global : Global .this .type = Global .this
644
- val runsAfter = List [String ]()
645
- val runsRightAfter = None
646
- } with SampleTransform
647
-
648
634
/** The checkers are for validating the compiler data structures
649
635
* at phase boundaries.
650
636
*/
@@ -778,48 +764,16 @@ class Global(var currentSettings: Settings, var reporter: Reporter)
778
764
/** Returns List of (phase, value) pairs, including only those
779
765
* where the value compares unequal to the previous phase's value.
780
766
*/
781
- def afterEachPhase [T ](op : => T ): List [(Phase , T )] = {
767
+ def afterEachPhase [T ](op : => T ): List [(Phase , T )] = { // used in tests
782
768
phaseDescriptors.map(_.ownPhase).filterNot(_ eq NoPhase ).foldLeft(List [(Phase , T )]()) { (res, ph) =>
783
769
val value = exitingPhase(ph)(op)
784
770
if (res.nonEmpty && res.head._2 == value) res
785
771
else ((ph, value)) :: res
786
772
} reverse
787
773
}
788
774
789
- /** Returns List of ChangeAfterPhase objects, encapsulating those
790
- * phase transitions where the result of the operation gave a different
791
- * list than it had when run during the previous phase.
792
- */
793
- def changesAfterEachPhase [T ](op : => List [T ]): List [ChangeAfterPhase [T ]] = {
794
- val ops = ((NoPhase , Nil )) :: afterEachPhase(op)
795
-
796
- ops sliding 2 map {
797
- case (_, before) :: (ph, after) :: Nil =>
798
- val lost = before filterNot (after contains _)
799
- val gained = after filterNot (before contains _)
800
- ChangeAfterPhase (ph, lost, gained)
801
- case _ => ???
802
- } toList
803
- }
804
775
private def numberedPhase (ph : Phase ) = " %2d/%s" .format(ph.id, ph.name)
805
776
806
- case class ChangeAfterPhase [+ T ](ph : Phase , lost : List [T ], gained : List [T ]) {
807
- private def mkStr (what : String , xs : List [_]) = (
808
- if (xs.isEmpty) " "
809
- else xs.mkString(what + " after " + numberedPhase(ph) + " {\n " , " \n " , " \n }\n " )
810
- )
811
- override def toString = mkStr(" Lost" , lost) + mkStr(" Gained" , gained)
812
- }
813
-
814
- def describeAfterEachPhase [T ](op : => T ): List [String ] =
815
- afterEachPhase(op) map { case (ph, t) => " [after %-15s] %s" .format(numberedPhase(ph), t) }
816
-
817
- def describeAfterEveryPhase [T ](op : => T ): String =
818
- describeAfterEachPhase(op) map (" " + _ + " \n " ) mkString
819
-
820
- def printAfterEachPhase [T ](op : => T ): Unit =
821
- describeAfterEachPhase(op) foreach (m => println(" " + m))
822
-
823
777
// ------------ Invalidations ---------------------------------
824
778
825
779
/** Is given package class a system package class that cannot be invalidated?
@@ -1057,7 +1011,6 @@ class Global(var currentSettings: Settings, var reporter: Reporter)
1057
1011
@ inline final def exitingPostErasure [T ](op : => T ): T = exitingPhase(currentRun.posterasurePhase)(op)
1058
1012
@ inline final def exitingExplicitOuter [T ](op : => T ): T = exitingPhase(currentRun.explicitouterPhase)(op)
1059
1013
@ inline final def exitingFlatten [T ](op : => T ): T = exitingPhase(currentRun.flattenPhase)(op)
1060
- @ inline final def exitingIcode [T ](op : => T ): T = exitingPhase(currentRun.icodePhase)(op)
1061
1014
@ inline final def exitingMixin [T ](op : => T ): T = exitingPhase(currentRun.mixinPhase)(op)
1062
1015
@ inline final def exitingPickler [T ](op : => T ): T = exitingPhase(currentRun.picklerPhase)(op)
1063
1016
@ inline final def exitingRefchecks [T ](op : => T ): T = exitingPhase(currentRun.refchecksPhase)(op)
@@ -1071,21 +1024,9 @@ class Global(var currentSettings: Settings, var reporter: Reporter)
1071
1024
@ inline final def enteringMixin [T ](op : => T ): T = enteringPhase(currentRun.mixinPhase)(op)
1072
1025
@ inline final def enteringPickler [T ](op : => T ): T = enteringPhase(currentRun.picklerPhase)(op)
1073
1026
@ inline final def enteringRefchecks [T ](op : => T ): T = enteringPhase(currentRun.refchecksPhase)(op)
1074
- @ inline final def enteringSpecialize [T ](op : => T ): T = enteringPhase(currentRun.specializePhase)(op)
1075
1027
@ inline final def enteringTyper [T ](op : => T ): T = enteringPhase(currentRun.typerPhase)(op)
1076
1028
@ inline final def enteringUncurry [T ](op : => T ): T = enteringPhase(currentRun.uncurryPhase)(op)
1077
1029
1078
- def explainContext (c : analyzer.Context ): String = (
1079
- if (c == null ) " " else (
1080
- """ | context owners: %s
1081
- |
1082
- |Enclosing block or template:
1083
- |%s""" .format(
1084
- c.owner.ownerChain.takeWhile(! _.isPackageClass).mkString(" -> " ),
1085
- nodePrinters.nodeToString(c.enclClassOrMethod.tree)
1086
- )
1087
- )
1088
- )
1089
1030
// Owners up to and including the first package class.
1090
1031
private def ownerChainString (sym : Symbol ): String = (
1091
1032
if (sym == null ) " "
@@ -1098,9 +1039,6 @@ class Global(var currentSettings: Settings, var reporter: Reporter)
1098
1039
pairs.toList collect { case (k, v) if v != null => " %20s: %s" .format(k, v) } mkString " \n "
1099
1040
)
1100
1041
1101
- def explainTree (t : Tree ): String = formatExplain(
1102
- )
1103
-
1104
1042
/** Don't want to introduce new errors trying to report errors,
1105
1043
* so swallow exceptions.
1106
1044
*/
@@ -1158,7 +1096,6 @@ class Global(var currentSettings: Settings, var reporter: Reporter)
1158
1096
}
1159
1097
1160
1098
def newUnitParser (code : String ) = new syntaxAnalyzer.UnitParser (newCompilationUnit(code))
1161
- def newUnitScanner (code : String ) = new syntaxAnalyzer.UnitScanner (newCompilationUnit(code))
1162
1099
def newCompilationUnit (code : String ) = new CompilationUnit (newSourceFile(code))
1163
1100
def newSourceFile (code : String ) = new BatchSourceFile (" <console>" , code)
1164
1101
@@ -1181,9 +1118,8 @@ class Global(var currentSettings: Settings, var reporter: Reporter)
1181
1118
val inlinerWarnings = new ConditionalWarning (" inliner" , settings.YinlinerWarnings )
1182
1119
val allConditionalWarnings = List (deprecationWarnings0, uncheckedWarnings0, featureWarnings, inlinerWarnings)
1183
1120
1184
- // for sbt's benefit
1185
- def uncheckedWarnings : List [(Position , String )] = uncheckedWarnings0.warnings.toList
1186
- def deprecationWarnings : List [(Position , String )] = deprecationWarnings0.warnings.toList
1121
+ def uncheckedWarnings : List [(Position , String )] = uncheckedWarnings0.warnings.toList // used in sbt
1122
+ def deprecationWarnings : List [(Position , String )] = deprecationWarnings0.warnings.toList // used in sbt
1187
1123
1188
1124
var reportedFeature = Set [Symbol ]()
1189
1125
@@ -1350,7 +1286,7 @@ class Global(var currentSettings: Settings, var reporter: Reporter)
1350
1286
val namerPhase = phaseNamed(" namer" )
1351
1287
// val packageobjectsPhase = phaseNamed("packageobjects")
1352
1288
val typerPhase = phaseNamed(" typer" )
1353
- val inlineclassesPhase = phaseNamed(" inlineclasses" )
1289
+ // val inlineclassesPhase = phaseNamed("inlineclasses")
1354
1290
// val superaccessorsPhase = phaseNamed("superaccessors")
1355
1291
val picklerPhase = phaseNamed(" pickler" )
1356
1292
val refchecksPhase = phaseNamed(" refchecks" )
@@ -1363,7 +1299,7 @@ class Global(var currentSettings: Settings, var reporter: Reporter)
1363
1299
val erasurePhase = phaseNamed(" erasure" )
1364
1300
val posterasurePhase = phaseNamed(" posterasure" )
1365
1301
// val lazyvalsPhase = phaseNamed("lazyvals")
1366
- val lambdaliftPhase = phaseNamed(" lambdalift" )
1302
+ // val lambdaliftPhase = phaseNamed("lambdalift")
1367
1303
// val constructorsPhase = phaseNamed("constructors")
1368
1304
val flattenPhase = phaseNamed(" flatten" )
1369
1305
val mixinPhase = phaseNamed(" mixin" )
@@ -1373,12 +1309,10 @@ class Global(var currentSettings: Settings, var reporter: Reporter)
1373
1309
val inlineExceptionHandlersPhase = phaseNamed(" inlineExceptionHandlers" )
1374
1310
val closelimPhase = phaseNamed(" closelim" )
1375
1311
val dcePhase = phaseNamed(" dce" )
1376
- val jvmPhase = phaseNamed(" jvm" )
1312
+ // val jvmPhase = phaseNamed("jvm")
1377
1313
// val msilPhase = phaseNamed("msil")
1378
1314
1379
1315
def runIsAt (ph : Phase ) = globalPhase.id == ph.id
1380
- def runIsPast (ph : Phase ) = globalPhase.id > ph.id
1381
- // def runIsAtBytecodeGen = (runIsAt(jvmPhase) || runIsAt(msilPhase))
1382
1316
def runIsAtOptimiz = {
1383
1317
runIsAt(inlinerPhase) || // listing phases in full for robustness when -Ystop-after has been given.
1384
1318
runIsAt(inlineExceptionHandlersPhase) ||
@@ -1743,7 +1677,7 @@ class Global(var currentSettings: Settings, var reporter: Reporter)
1743
1677
// and forScaladoc default to onlyPresentation, which is the same as defaulting
1744
1678
// to false except in old code. The downside is that this leaves us calling a
1745
1679
// deprecated method: but I see no simple way out, so I leave it for now.
1746
- def forJVM = settings.target.value startsWith " jvm"
1680
+ // def forJVM = settings.target.value startsWith "jvm"
1747
1681
override def forMSIL = settings.target.value startsWith " msil"
1748
1682
def forInteractive = false
1749
1683
def forScaladoc = false
0 commit comments