Skip to content

test: assert line numbers of evaluated source - #6169

Open
espressolee wants to merge 2 commits into
pybind:masterfrom
espressolee:test-eval-line-numbers
Open

test: assert line numbers of evaluated source#6169
espressolee wants to merge 2 commits into
pybind:masterfrom
espressolee:test-eval-line-numbers

Conversation

@espressolee

Copy link
Copy Markdown

Description

Adds regression coverage for #6089: a SyntaxError and an exception traceback originating on line 2 of evaluated source must both report line 2.

Checked with pybind11's own test target (PYBIND11_TEST_OVERRIDE=test_eval.cpp, CPython 3.12.13, macOS arm64, Apple clang 21): test_eval passes at current master, and with eval.h from f00aa6fe (the parent of #6089) only the new test fails, reporting (3, 3).

espressolee and others added 2 commits September 4, 2026 00:38
pybind#6089 dropped the coding cookie prepended to py::eval/py::exec source,
which had shifted reported SyntaxError and traceback line numbers by one,
and noted that no test asserted on them. Add one: errors on line 2 of the
evaluated source must report line 2. With pybind11's own test target the
new test reports (3, 3) against the parent of pybind#6089 and (2, 2) with the fix.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant