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>