From 0720157cd7d82db6c1efea615c2e78565b4ada0e Mon Sep 17 00:00:00 2001 From: Jason Zaugg Date: Tue, 2 Oct 2012 21:01:10 +0200 Subject: SI-6436 Handle ambiguous string processors Before, we got in an inifinite loop by chasing the error typed result of adaptToMemberWithArgs. One point of befuddlement remains: why did t6436 and t6436b behave differently before this change? --- test/files/neg/t6436.check | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 test/files/neg/t6436.check (limited to 'test/files/neg/t6436.check') diff --git a/test/files/neg/t6436.check b/test/files/neg/t6436.check new file mode 100644 index 0000000000..ecb28f9100 --- /dev/null +++ b/test/files/neg/t6436.check @@ -0,0 +1,10 @@ +t6436.scala:8: error: type mismatch; + found : StringContext + required: ?{def q: ?} +Note that implicit conversions are not applicable because they are ambiguous: + both method foo1 in object quasiquotes of type (ctx: StringContext)Object{def q: Nothing} + and method foo2 in object quasiquotes of type (ctx: StringContext)Object{def q: Nothing} + are possible conversion functions from StringContext to ?{def q: ?} + println(q"a") + ^ +one error found -- cgit v1.2.3