Skip to content

Notes added to "SyntaxError" (and subclasses) are not displayed#109179

@Delgan

Description

@Delgan

Bug report

Bug description:

Hi.

I noticed that using add_note() with an error of type SyntaxError (or its derived such as IndentationError and TabError) produces a traceback without the expected notes.

Here is a minimal reproducible example:

try: exec("a = 7 *") exceptSyntaxErrorase: e.add_note("Note") raise

Or alternatively:

e=SyntaxError("invalid syntax", ("<string>", 1, 8, "a = 7 *\n", 1, 8)) e.add_note("Note") raisee

The output of these examples is:

Traceback (mostrecentcalllast): File"/home/delgan/test.py", line2, in<module>exec("a = 7 *") File"<string>", line1a=7*^SyntaxError: invalidsyntax

The expected "Note" is missing.

Since neither PEP 678 nor the documentation mention that SyntaxError is not fully compatible with notes, I assume that this is probably a bug.

CPython versions tested on:

3.11, 3.12

Operating systems tested on:

Linux

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    3.11only security fixes3.12only security fixes3.13bugs and security fixesinterpreter-core(Objects, Python, Grammar, and Parser dirs)type-bugAn unexpected behavior, bug, or error

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions