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
gh-101400: Fix wrong lineno in exception message on continue/break which are not in a loop #101413
base: main
Are you sure you want to change the base?
Conversation
corona10
commented
Jan 30, 2023
•
edited by bedevere-bot
edited by bedevere-bot
- Issue: Negative line number in stacktrace exception #101400
Without patch |
Lib/test/test_compile.py
Outdated
| source = f"with object() as obj:\n {stmt}" | ||
| compile(source, f"<unloop_{stmt}>", "exec") | ||
| exc = err_ctx.exception | ||
| self.assertEqual(exc.lineno, 2) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are some tests for break and continue outside loops in Lib/test/test_syntax.py, I think the lineno check could be added there. For instance, test_break_outside_loop calls self._check_error() but doesn't pass an expected lineno, though it could. And a similar test for continue could be added next to it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done!