The option "-n" have a side effect with the option "-P" and the regexp
'^\r$', the line numbers got overwritten by the carriage return char so
these don't appear on output.
cmd ex: grep -Pn '^\r$' file.txt
ps: I know I can see the numbers by redirecting output in a file.