summaryrefslogtreecommitdiff
path: root/src/scalap
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2013-05-03 10:15:10 -0700
committerPaul Phillips <paulp@improving.org>2013-05-03 11:36:37 -0700
commit80ac7d006350c0d60ff1b293ee955c3435288a9e (patch)
tree1cb3f2dfbec47cb1a966b7bc459907a14f937f1b /src/scalap
parent6eb33d4ad15ae3548c21535de652ea246582a44f (diff)
downloadscala-80ac7d006350c0d60ff1b293ee955c3435288a9e.tar.gz
scala-80ac7d006350c0d60ff1b293ee955c3435288a9e.tar.bz2
scala-80ac7d006350c0d60ff1b293ee955c3435288a9e.zip
Absolutized paths involving the scala package.
Confusing, now-it-happens now-it-doesn't mysteries lurk in the darkness. When scala packages are declared like this: package scala.collection.mutable Then paths relative to scala can easily be broken via the unlucky presence of an empty (or nonempty) directory. Example: // a.scala package scala.foo class Bar { new util.Random } % scalac ./a.scala % mkdir util % scalac ./a.scala ./a.scala:4: error: type Random is not a member of package util new util.Random ^ one error found There are two ways to play defense against this: - don't use relative paths; okay sometimes, less so others - don't "opt out" of the scala package This commit mostly pursues the latter, with occasional doses of the former. I created a scratch directory containing these empty directories: actors annotation ant api asm beans cmd collection compat concurrent control convert docutil dtd duration event factory forkjoin generic hashing immutable impl include internal io logging macros man1 matching math meta model mutable nsc parallel parsing partest persistent process pull ref reflect reify remote runtime scalap scheduler script swing sys text threadpool tools transform unchecked util xml I stopped when I could compile the main src directories even with all those empties on my classpath.
Diffstat (limited to 'src/scalap')
-rw-r--r--src/scalap/scala/tools/scalap/ByteArrayReader.scala3
-rw-r--r--src/scalap/scala/tools/scalap/CodeWriter.scala3
-rw-r--r--src/scalap/scala/tools/scalap/Main.scala3
-rw-r--r--src/scalap/scala/tools/scalap/MetaParser.scala3
4 files changed, 8 insertions, 4 deletions
diff --git a/src/scalap/scala/tools/scalap/ByteArrayReader.scala b/src/scalap/scala/tools/scalap/ByteArrayReader.scala
index bb001623a8..9c72bdbf1e 100644
--- a/src/scalap/scala/tools/scalap/ByteArrayReader.scala
+++ b/src/scalap/scala/tools/scalap/ByteArrayReader.scala
@@ -6,7 +6,8 @@
*/
-package scala.tools.scalap
+package scala
+package tools.scalap
class ByteArrayReader(content: Array[Byte]) {
diff --git a/src/scalap/scala/tools/scalap/CodeWriter.scala b/src/scalap/scala/tools/scalap/CodeWriter.scala
index 8254c2dfce..fe594c14cf 100644
--- a/src/scalap/scala/tools/scalap/CodeWriter.scala
+++ b/src/scalap/scala/tools/scalap/CodeWriter.scala
@@ -6,7 +6,8 @@
*/
-package scala.tools.scalap
+package scala
+package tools.scalap
import java.io._
diff --git a/src/scalap/scala/tools/scalap/Main.scala b/src/scalap/scala/tools/scalap/Main.scala
index 90f8cb8d71..5da4227e53 100644
--- a/src/scalap/scala/tools/scalap/Main.scala
+++ b/src/scalap/scala/tools/scalap/Main.scala
@@ -5,7 +5,8 @@
**
*/
-package scala.tools.scalap
+package scala
+package tools.scalap
import java.io.{ PrintStream, OutputStreamWriter, ByteArrayOutputStream }
import scala.reflect.NameTransformer
diff --git a/src/scalap/scala/tools/scalap/MetaParser.scala b/src/scalap/scala/tools/scalap/MetaParser.scala
index 00678ab504..8b4ffb3efd 100644
--- a/src/scalap/scala/tools/scalap/MetaParser.scala
+++ b/src/scalap/scala/tools/scalap/MetaParser.scala
@@ -6,7 +6,8 @@
*/
-package scala.tools.scalap
+package scala
+package tools.scalap
import java.io._
import java.util._