summaryrefslogtreecommitdiff
path: root/test/files/neg/t8610-arg.flags
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2014-12-15 16:21:26 +1000
committerAdriaan Moors <adriaan.moors@typesafe.com>2015-02-02 15:25:41 -0800
commit1970a8315ed3b2ff8877dfef2afcee936d59871b (patch)
tree0519d7b80607af264c1f3afda59b2e1c4d772219 /test/files/neg/t8610-arg.flags
parent5d7098c629bbb7cc0ab7e74c235bd4afca3de24e (diff)
downloadscala-1970a8315ed3b2ff8877dfef2afcee936d59871b.tar.gz
scala-1970a8315ed3b2ff8877dfef2afcee936d59871b.tar.bz2
scala-1970a8315ed3b2ff8877dfef2afcee936d59871b.zip
SI-9041 Avoid unreported type error with overloading, implicits
If `qual.foo(args)` fails to typecheck, we fall back to `ImplicitView(qual).foo(args)`. However, if the original type error stemmed from an overload ambiguity, the tree `Select(qual, 'foo')` holds onto an error symbol. The fall back attempt just returns an `Apply` tree containing the erroneous qualifier, as it does not want to issue cascading type errors. This commit replaces the error symbol with a `NoSymbol`, which triggers the second try typechecking to perform overload resolution again. A more principled fix might be to more pervasively duplicate trees before mutating their types and symbols, that this is beyond the scope of this bug fix.
Diffstat (limited to 'test/files/neg/t8610-arg.flags')
0 files changed, 0 insertions, 0 deletions