From 2fdf660aba6a23a5adb665bd1af4d54e8952034c Mon Sep 17 00:00:00 2001 From: Martin Odersky Date: Tue, 5 May 2015 15:25:24 +0200 Subject: Allow to compile root import classes without special option. Can now compile Predef/DottyPredef without -Yno-import option. Achieved by making some parts of imports more lazy. --- src/dotty/tools/dotc/core/Definitions.scala | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/dotty/tools/dotc/core/Definitions.scala') diff --git a/src/dotty/tools/dotc/core/Definitions.scala b/src/dotty/tools/dotc/core/Definitions.scala index c21620048..a1b44ec34 100644 --- a/src/dotty/tools/dotc/core/Definitions.scala +++ b/src/dotty/tools/dotc/core/Definitions.scala @@ -449,7 +449,9 @@ class Definitions { lazy val isPolymorphicAfterErasure = Set[Symbol](Any_isInstanceOf, Any_asInstanceOf, newRefArrayMethod) - lazy val RootImports = List[Symbol](JavaLangPackageVal, ScalaPackageVal, ScalaPredefModule, DottyPredefModule) + val RootImportFns = List[() => Symbol](() => JavaLangPackageVal, () => ScalaPackageVal, () => ScalaPredefModule, () => DottyPredefModule) + + lazy val RootImports = RootImportFns.map(_()) def isTupleType(tp: Type)(implicit ctx: Context) = { val arity = tp.dealias.argInfos.length -- cgit v1.2.3