resolve to the same existing file,
no action is taken.
Otherwise, the rename may include the following effects:
- if new_p resolves to an existing non-directory file,
new_p is removed; otherwise,
- if new_p resolves to an existing directory,
new_p is removed if empty on POSIX compliant operating systems
but may be an error on other operating systems.
A symbolic link is itself renamed, rather than the file it resolves to.
— end note