summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEugene Burmako <xeno.by@gmail.com>2012-04-25 13:30:51 +0300
committerEugene Burmako <xeno.by@gmail.com>2012-04-25 13:32:36 +0300
commit0a24981d0a71627e541d283b9f739e09a7eab550 (patch)
tree4309370758667a00deeb84670631513ee7cd0ad6 /src
parente3634d0ae046d8b011d01665f27694407b7e7c04 (diff)
downloadscala-0a24981d0a71627e541d283b9f739e09a7eab550.tar.gz
scala-0a24981d0a71627e541d283b9f739e09a7eab550.tar.bz2
scala-0a24981d0a71627e541d283b9f739e09a7eab550.zip
fixes SI-5706
Diffstat (limited to 'src')
-rw-r--r--src/compiler/scala/tools/nsc/typechecker/Macros.scala1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/Macros.scala b/src/compiler/scala/tools/nsc/typechecker/Macros.scala
index 5d4cd0be77..4e4c52e0f7 100644
--- a/src/compiler/scala/tools/nsc/typechecker/Macros.scala
+++ b/src/compiler/scala/tools/nsc/typechecker/Macros.scala
@@ -388,6 +388,7 @@ trait Macros { self: Analyzer =>
compatibilityError("types incompatible for parameter "+aparam.name+": corresponding is not a vararg parameter")
if (!hasErrors) {
var atpe = aparam.tpe.substSym(flatactparams, flatreqparams).instantiateTypeParams(tparams, tvars)
+ atpe = atpe.dealias // SI-5706
// strip the { type PrefixType = ... } refinement off the Context or otherwise we get compatibility errors
atpe = atpe match {
case RefinedType(List(tpe), Scope(sym)) if tpe == MacroContextClass.tpe && sym.allOverriddenSymbols.contains(MacroContextPrefixType) => tpe