summaryrefslogtreecommitdiff
path: root/test/files/neg/macro-invalidret.check
diff options
context:
space:
mode:
authorEugene Burmako <xeno.by@gmail.com>2013-10-22 23:23:49 +0200
committerEugene Burmako <xeno.by@gmail.com>2013-10-23 01:12:13 +0200
commit9b6a269b6af0da9a89d39578402bed82c47f4ab7 (patch)
tree85a19e3e628a380a571bfad0ce7525aa7d728476 /test/files/neg/macro-invalidret.check
parent8848f241616627b0c5beca38a5107c4eca3e10fd (diff)
downloadscala-9b6a269b6af0da9a89d39578402bed82c47f4ab7.tar.gz
scala-9b6a269b6af0da9a89d39578402bed82c47f4ab7.tar.bz2
scala-9b6a269b6af0da9a89d39578402bed82c47f4ab7.zip
better macro impl shape errors
With the advent of quasiquotes, we allowed both arguments and return types of macro impls to be c.Tree's (as opposed to traditional c.Expr[T]'s). This warrants an update of macro def <-> macro impl signature mismatch errors that include a printout of suggested macro impl signatures. Now along with a signature that contains exprs, we suggest another signature that has all exprs replaced by trees
Diffstat (limited to 'test/files/neg/macro-invalidret.check')
-rw-r--r--test/files/neg/macro-invalidret.check2
1 files changed, 2 insertions, 0 deletions
diff --git a/test/files/neg/macro-invalidret.check b/test/files/neg/macro-invalidret.check
index 8c6ed4eb45..6cf62c292b 100644
--- a/test/files/neg/macro-invalidret.check
+++ b/test/files/neg/macro-invalidret.check
@@ -1,11 +1,13 @@
Macros_Test_2.scala:2: error: macro implementation has wrong shape:
required: (c: scala.reflect.macros.Context): c.Expr[Any]
+ or : (c: scala.reflect.macros.Context): c.Tree
found : (c: scala.reflect.macros.Context): Int
type mismatch for return type: Int does not conform to c.Expr[Any]
def foo1 = macro Impls.foo1
^
Macros_Test_2.scala:3: error: macro implementation has wrong shape:
required: (c: scala.reflect.macros.Context): c.Expr[Any]
+ or : (c: scala.reflect.macros.Context): c.Tree
found : (c: scala.reflect.macros.Context): reflect.runtime.universe.Literal
type mismatch for return type: reflect.runtime.universe.Literal does not conform to c.Expr[Any]
def foo2 = macro Impls.foo2