http://www.perlmonks.org?node_id=120141


in reply to mkdir die

I posted this on of the duplicate copies of this node but it got reaped so here it is again. As blakem pointed out, it's a matter of operator precedence. This gets interpreted as mkdir $DIR_LOCATION, (0777 || die "sigh"); Use parens on your mkdir call:
eval { mkdir ($DIR_LOCATION, 0777) || die "sigh"; }; if ($@) { print "Never gets here to display error message."; }
blakem's solution works too since or has lower precedence than || but I personally prefer parens and ||. Either way works fine -- do whicher you like better. --RT

Replies are listed 'Best First'.
Re: Re: mkdir die
by zakzebrowski (Curate) on Oct 22, 2001 at 18:02 UTC
    Thanks everyone. Forgot about the ()'s & precedence... Using opera for my web browser and for some reason it reposted the question for the duplicate nodes... sorry about that. Anyway, thanks for helping me get it to work!

    ----
    Zak