New GitHub issue #94692 from RamseyK:<br>
<hr>
<pre>
**Bug report**
Expected behavior: Passing None to shutil.rmtree's path argument should not yield an exception when ignore_errors=True.
Behavior on MacOS Python 3.10 (MacPorts) - Correct behavior:
```
>>> import shutil
>>> shutil.rmtree(None, ignore_errors=True)
>>> shutil.rmtree(None)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/shutil.py", line 712, in rmtree
onerror(os.lstat, path, sys.exc_info())
File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/shutil.py", line 710, in rmtree
orig_st = os.lstat(path)
TypeError: lstat: path should be string, bytes or os.PathLike, not NoneType
```
The above occurs on RedHat Linux 8 Python 3.8 and Python 3.10 as well.
Behavior on Windows (Incorrect/differs from MacOS/Linux):
```
>>> import shutil
>>> shutil.rmtree(None, ignore_errors=True)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python310\lib\shutil.py", line 733, in rmtree
onerror(os.lstat, path, sys.exc_info())
File "C:\Python310\lib\shutil.py", line 577, in rmtree
orig_st = os.lstat(path)
TypeError: lstat: path should be string, bytes or os.PathLike, not NoneType
>>> shutil.rmtree(None)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python310\lib\shutil.py", line 733, in rmtree
onerror(os.lstat, path, sys.exc_info())
File "C:\Python310\lib\shutil.py", line 577, in rmtree
orig_st = os.lstat(path)
TypeError: lstat: path should be string, bytes or os.PathLike, not NoneType
```
**Environment**
* CPython Versions Tested: 3.8.x, 3.10.x
* Operating Systems: Windows 10 21H2, MacOS, RedHat Linux 8 (x86-64)
</pre>
<hr>
<a href="https://github.com/python/cpython/issues/94692">View on GitHub</a>
<p>Labels: type-bug</p>
<p>Assignee: </p>