New GitHub issue #122527 from XuehaiPan:<br>

<hr>

<pre>
# Crash report

### What happened?

A simple standalone file:

```python
# test1.py

import time

obj = time.struct_time(range(1, 10))
```

```console
$ pyenv install 3.14t-dev --debug
$ pyenv local 3.14t-dev-debug
$ python3 -VV
Python 3.14.0a0 experimental free-threading build (heads/main:bd3d31f, Aug  1 2024, 01:22:33) [Clang 15.0.0 (clang-1500.3.9.4)]
$ python3 test1.py
Fatal Python error: _Py_Dealloc: Deallocator of type 'time.struct_time' raised an exception
Python runtime state: finalizing (tstate=0x00000001018ca548)
Exception ignored in the internal traceback machinery:
ImportError: sys.meta_path is None, Python is likely shutting down
TypeError: Missed attribute 'n_fields' of type time.struct_time

Current thread 0x00000001fff70c00 (most recent call first):
  Garbage-collecting
  <no Python frame>
[1]    89377 abort python3 test1.py
$ python3 -c 'import test1'
Fatal Python error: _Py_Dealloc: Deallocator of type 'time.struct_time' raised an exception
Python runtime state: finalizing (tstate=0x00000001040a2548)
Exception ignored in the internal traceback machinery:
ImportError: sys.meta_path is None, Python is likely shutting down
TypeError: Missed attribute 'n_fields' of type time.struct_time

Current thread 0x00000001fff70c00 (most recent call first):
  Garbage-collecting
  <no Python frame>
[1]    89737 abort python3 -c 'import test1'
```

If I remove the assignment for `obj`, the program can exit successfully.

```python
# test2.py

import time

time.struct_time(range(1, 10))
```

```console
$ python3 test2.py # no output
$ python3 -c 'import test2'  # no output
```

### CPython versions tested on:

CPython main branch

### Operating systems tested on:

Linux, macOS

### Output from running 'python -VV' on the command line:

Python 3.14.0a0 experimental free-threading build (heads/main:bd3d31f, Aug  1 2024, 01:22:33) [Clang 15.0.0 (clang-1500.3.9.4)]
</pre>

<hr>

<a href="https://github.com/python/cpython/issues/122527">View on GitHub</a>
<p>Labels: type-crash</p>
<p>Assignee: </p>