I dug out some old code and tried to run on 5.26.2:
Unimplemented: POSIX::tmpnam(): use File::Temp instead at POSIX.pm line 185.
Now I have to edit a module? Great! This is apparently why:
"POSIX.1-2008 marks tmpnam() as obsolete."
"Note: avoid using these functions; use mkstemp(3) or tmpfile(3) instead."
My question is why are POSIX, and by extension Perl, breaking our code
because *they* made a mistake? Why didn't they fix tmpnam() as if lives
depended on not breaking standards? I hope no pacemakers use this C routine.
By not making one fix they broke probably vast numbers of programs. I guess
someone who knows how could grep github to see the damage.