diff options
author | Eugene Burmako <xeno.by@gmail.com> | 2014-01-12 12:01:12 +0100 |
---|---|---|
committer | Eugene Burmako <xeno.by@gmail.com> | 2014-01-12 18:03:51 +0100 |
commit | e36888c3d953048483ccea9a95d5984b54ad6ebc (patch) | |
tree | a6ba3268a238acb5310dcfdefcf8234c0b7f6a77 /test/files/neg/macro-bundle-overloaded.scala | |
parent | 3a689f5c426436aea716567625fd6167e57bef92 (diff) | |
download | scala-e36888c3d953048483ccea9a95d5984b54ad6ebc.tar.gz scala-e36888c3d953048483ccea9a95d5984b54ad6ebc.tar.bz2 scala-e36888c3d953048483ccea9a95d5984b54ad6ebc.zip |
prohibits constructor overloading for macro bundles
As per Jason’s feedback, this commit handles overloaded constructors
in macro bundles. The backend now checks that we have a constructor of
a correct type. The frontend now prohibits multiple constructors altogether.
Diffstat (limited to 'test/files/neg/macro-bundle-overloaded.scala')
-rw-r--r-- | test/files/neg/macro-bundle-overloaded.scala | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/test/files/neg/macro-bundle-overloaded.scala b/test/files/neg/macro-bundle-overloaded.scala new file mode 100644 index 0000000000..a4bc66f974 --- /dev/null +++ b/test/files/neg/macro-bundle-overloaded.scala @@ -0,0 +1,12 @@ +import scala.language.experimental.macros +import scala.reflect.macros.blackbox.{Context => BlackboxContext} +import scala.reflect.macros.whitebox.{Context => WhiteboxContext} + +class Bundle(val c: BlackboxContext) { + def this(c: WhiteboxContext) = this(c: BlackboxContext) + def impl = ??? +} + +object Macros { + def foo = macro Bundle.impl +}
\ No newline at end of file |