IO::Handle: bad open mode: O_CREAT at - line 4.
ist auf jeden Fall ein Bug. Denn der Programmierer macht ja nichts falsch, er verwendet einen legitimen open mode O_CREAT und das ist absolut korrekt!
Zumal diese FM mit Carp::croak() erzeugt wird, was eine Excption wirft und dem Benutzer einen Backtrace zeigt mit Verweis auf eine angeblich fehlerhafte Zeile.
Im Übrigen schreibt auch eine mit croak() geworfene Excption den Fehlertext nach $@. Insofern ist es ebenfalls ein Bug, die o.g. FM nach $! respective $^E umzuleiten.
Ich bitte @dedlfix also darum, den Bug Report zu erstellen und zu kommunizieren. Auf das Ergebnis dürfen wir alle hier gespannt sein!
MfG