mirror of
https://github.com/idris-lang/Idris2.git
synced 2024-12-24 12:14:26 +03:00
c861845757
* Abandon ambiguity resolution on undefined name This has finally annoyed me enough to do something about it. If we get a "no such variable" error there's no point exploring other branches. * Removes spaces from test file One day I'll update the linter to ignore test files. We should really accept literally anything as a possiblity for test files, even if removing the spaces is tidier. * Reset context before throwing in 'successful' Although I don't think this is strictly necessary for a fatal error, we should still for the sake of tidiness reset the state when backtracking.
51 lines
2.2 KiB
Idris
51 lines
2.2 KiB
Idris
|
|
namespace A
|
|
export
|
|
x : Bool -> Bool
|
|
x = not
|
|
|
|
namespace B
|
|
export
|
|
x : Nat -> Bool
|
|
x Z = True
|
|
x _ = False
|
|
|
|
%ambiguity_depth 1000
|
|
|
|
-- There's an undefined name very deep here - if we don't take a shortcut,
|
|
-- this shows all the ambiguous branches with the undefined named!
|
|
test : Nat -> Bool
|
|
test val
|
|
= x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $
|
|
x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ x $ va
|