From 91214dad841ee04e01d064da276e3fe46edf9e31 Mon Sep 17 00:00:00 2001 From: Jason Zaugg Date: Wed, 24 Jul 2013 15:24:06 +1000 Subject: SI-7689 Fix typing regression with default arguments Regressed in e28c3edda4. That commit encoded upper/lower bounds of Any/Nothing as EmptyTree, which were triggering the .isEmpty check in Namers#TypeTreeSubstitutor and resulting in the default getter having TypeTree() as the return type. This resulted in a "missing parmameter type" error. This commit tightens up that condition to only consider empty TypeTrees (those wrapping null or NoType.) --- test/files/pos/t7689.scala | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 test/files/pos/t7689.scala (limited to 'test/files/pos') diff --git a/test/files/pos/t7689.scala b/test/files/pos/t7689.scala new file mode 100644 index 0000000000..022e7ab7a0 --- /dev/null +++ b/test/files/pos/t7689.scala @@ -0,0 +1,7 @@ +object A { + // The default getter must have an explicit return type (List[_] => Int) + // This wasn't happening since e28c3edda4. That commit encoded upper/lower + // bounds of Any/Nothing as EmptyTree, which were triggering an .isEmpty + // check in Namers#TypeTreeSubstitutor + def x(f: List[_] => Int = _ => 3) = 9 +} -- cgit v1.2.3