New submission from Irit Katriel <iritkatr...@gmail.com>:

iritkatriel@Irits-MBP cpython % cat exc.py 

class A:
  class B:
    class E(Exception):
      pass

raise A.B.E()

iritkatriel@Irits-MBP cpython % cat test.py 

import exc


iritkatriel@Irits-MBP cpython % ./python.exe test.py 
Traceback (most recent call last):
  File "/Users/iritkatriel/src/cpython/test.py", line 2, in <module>
    import exc
    ^^^^^^^^^^
  File "/Users/iritkatriel/src/cpython/exc.py", line 7, in <module>
    raise A.B.E()
    ^^^^^^^^^^^^^
exc.E




==============
See the last line of the output: there is no such thing as exc.E. There is 
exc.A.B.E.

The traceback module doesn't have this issue:

iritkatriel@Irits-MBP cpython % cat test.py 

import traceback

try:
  import exc
except Exception as e:
  traceback.print_exception(e)


iritkatriel@Irits-MBP cpython % ./python.exe test.py 
Traceback (most recent call last):
  File "/Users/iritkatriel/src/cpython/test.py", line 5, in <module>
    import exc
    ^^^^^^^^^^
  File "/Users/iritkatriel/src/cpython/exc.py", line 7, in <module>
    raise A.B.E()
    ^^^^^^^^^^^^^
exc.A.B.E

----------
components: Interpreter Core
messages: 400873
nosy: iritkatriel
priority: normal
severity: normal
status: open
title: Incorrect exception output in C
type: behavior
versions: Python 3.11

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue45083>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to