diff options
-rw-r--r-- | src/library/scala/reflect/base/Base.scala | 2 | ||||
-rw-r--r-- | src/library/scala/reflect/base/StandardNames.scala | 6 | ||||
-rw-r--r-- | src/reflect/scala/reflect/internal/StdNames.scala | 2 | ||||
-rw-r--r-- | test/files/run/t6394b.check | 1 | ||||
-rw-r--r-- | test/files/run/t6394b.flags | 1 | ||||
-rw-r--r-- | test/files/run/t6394b/Macros_1.scala | 12 | ||||
-rw-r--r-- | test/files/run/t6394b/Test_2.scala | 4 |
7 files changed, 22 insertions, 6 deletions
diff --git a/src/library/scala/reflect/base/Base.scala b/src/library/scala/reflect/base/Base.scala index 7cbc39a3b6..5136f41df4 100644 --- a/src/library/scala/reflect/base/Base.scala +++ b/src/library/scala/reflect/base/Base.scala @@ -212,7 +212,6 @@ class Base extends Universe { self => def newTypeName(str: String) = new TypeName(str) object nme extends TermNamesBase { - type NameType = TermName val WILDCARD = newTermName("_") val CONSTRUCTOR = newTermName("<init>") val ROOTPKG = newTermName("_root_") @@ -223,7 +222,6 @@ class Base extends Universe { self => } object tpnme extends TypeNamesBase { - type NameType = TypeName val WILDCARD = nme.WILDCARD.toTypeName val EMPTY = nme.EMPTY.toTypeName val WILDCARD_STAR = newTypeName("_*") diff --git a/src/library/scala/reflect/base/StandardNames.scala b/src/library/scala/reflect/base/StandardNames.scala index 0b4ec3728a..fc1d247512 100644 --- a/src/library/scala/reflect/base/StandardNames.scala +++ b/src/library/scala/reflect/base/StandardNames.scala @@ -27,11 +27,13 @@ trait StandardNames { } trait TermNamesBase extends NamesBase { - val CONSTRUCTOR: TermName - val ROOTPKG: TermName + type NameType = TermName + val CONSTRUCTOR: NameType + val ROOTPKG: NameType } trait TypeNamesBase extends NamesBase { + type NameType = TypeName val EMPTY: NameType val WILDCARD_STAR: NameType } diff --git a/src/reflect/scala/reflect/internal/StdNames.scala b/src/reflect/scala/reflect/internal/StdNames.scala index 2f305296f5..8e00ef74e5 100644 --- a/src/reflect/scala/reflect/internal/StdNames.scala +++ b/src/reflect/scala/reflect/internal/StdNames.scala @@ -206,7 +206,6 @@ trait StdNames { } abstract class TypeNames extends Keywords with TypeNamesApi { - type NameType = TypeName protected implicit def createNameType(name: String): TypeName = newTypeNameCached(name) final val BYNAME_PARAM_CLASS_NAME: NameType = "<byname>" @@ -273,7 +272,6 @@ trait StdNames { } abstract class TermNames extends Keywords with TermNamesApi { - type NameType = TermName protected implicit def createNameType(name: String): TermName = newTermNameCached(name) /** Base strings from which synthetic names are derived. */ diff --git a/test/files/run/t6394b.check b/test/files/run/t6394b.check new file mode 100644 index 0000000000..34997f71e3 --- /dev/null +++ b/test/files/run/t6394b.check @@ -0,0 +1 @@ +TEST
diff --git a/test/files/run/t6394b.flags b/test/files/run/t6394b.flags new file mode 100644 index 0000000000..cd66464f2f --- /dev/null +++ b/test/files/run/t6394b.flags @@ -0,0 +1 @@ +-language:experimental.macros
\ No newline at end of file diff --git a/test/files/run/t6394b/Macros_1.scala b/test/files/run/t6394b/Macros_1.scala new file mode 100644 index 0000000000..5d93e1cda8 --- /dev/null +++ b/test/files/run/t6394b/Macros_1.scala @@ -0,0 +1,12 @@ +import scala.reflect.macros.Context + +object Macros { + def impl(c:Context): c.Expr[Any] = { + import c.universe._ + + val selfTree = This(tpnme.EMPTY) + c.Expr[AnyRef](selfTree) + } + + def foo: Any = macro impl +}
\ No newline at end of file diff --git a/test/files/run/t6394b/Test_2.scala b/test/files/run/t6394b/Test_2.scala new file mode 100644 index 0000000000..75e84f0e38 --- /dev/null +++ b/test/files/run/t6394b/Test_2.scala @@ -0,0 +1,4 @@ +object Test extends App { + println(Macros.foo) + override def toString = "TEST" +}
\ No newline at end of file |