Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Runtime predicate errors in forall/exists/iota/comprehensions mislocated #732

Closed
nickbattle opened this issue Jun 23, 2020 · 1 comment
Closed
Labels
bug Incorrect behaviour of the tool language Issues in parser, TC, interpreter, POG or CG Mergable A fix is available on a branch to merge for release
Milestone

Comments

@nickbattle
Copy link
Contributor

If a value exception occurs while processing the predicate part of a forall, exists, iota or a comprehension expression, the location of the error is given as the location of the overall expression rather than the predicate. This is confusing! For example, passing {nil} to this function:

	f: set of [bool] -> bool
	f(s) ==
		exists e in set s &     <--- Debugger stops at this line
			e;              <--- Error really occurs here

It's not critical, but it would make debugging less confusing if this was fixed.

@nickbattle nickbattle added bug Incorrect behaviour of the tool language Issues in parser, TC, interpreter, POG or CG labels Jun 23, 2020
@nickbattle nickbattle added the Mergable A fix is available on a branch to merge for release label Jun 23, 2020
@nickbattle
Copy link
Contributor Author

Fix now available in ncb/development.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Incorrect behaviour of the tool language Issues in parser, TC, interpreter, POG or CG Mergable A fix is available on a branch to merge for release
Projects
None yet
Development

No branches or pull requests

2 participants