diff options
author | Hubert Plociniczak <hubert.plociniczak@gmail.com> | 2012-01-25 11:33:53 +0100 |
---|---|---|
committer | Hubert Plociniczak <hubert.plociniczak@gmail.com> | 2012-01-25 11:33:53 +0100 |
commit | c800d1fec5241ed8c29e5af30465856f9b583246 (patch) | |
tree | a37c194bb2d632adf9adeda17a107913f63864ba /test/files/neg/t649.check | |
parent | de2b0c68785afc0f801fbe8d2750366e90c9fa70 (diff) | |
download | scala-c800d1fec5241ed8c29e5af30465856f9b583246.tar.gz scala-c800d1fec5241ed8c29e5af30465856f9b583246.tar.bz2 scala-c800d1fec5241ed8c29e5af30465856f9b583246.zip |
Use context for buffering errors that cannot/shouldn't be reported in the given moment (instead of throwing type errors). This avoids previous problems where we were creating fake error trees in some incorrect places like in type completers in Namers etc. Implicits relied heavily on type errors being thrown but performance should stay the same due to some explicit checks/returns.
Some of the problems involved how ambiguous error messages were collected/reported because it was very random (similarly for divergent implicits). This should be more explicit now. Reduced the number of unnecessary cyclic references being thrown (apart from those in Symbols/Types which don't have a context and need to stay for now as is).
Review by @paulp, @odersky.
Diffstat (limited to 'test/files/neg/t649.check')
-rw-r--r-- | test/files/neg/t649.check | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/test/files/neg/t649.check b/test/files/neg/t649.check index 5a270d4751..a6670886b5 100644 --- a/test/files/neg/t649.check +++ b/test/files/neg/t649.check @@ -1,4 +1,4 @@ t649.scala:3: error: overloaded method foo needs result type def foo[A] = foo[A] - ^ + ^ one error found |