#!/usr/bin/perl
# Copyright 2002-2016, Paul Johnson (paul@pjcj.net)
# This software is free. It is licensed under the same terms as Perl itself.
# The latest version of this software should be available from my homepage:
# http://www.pjcj.net
# __COVER__ skip_test $] < 5.008 || $^O eq "cygwin"
# __COVER__ skip_reason Busted on 5.6 and cygwin
use strict;
use warnings;
my @x;
my $y = 1;
my $z = 0;
$::foo = 17;
if ($] >= 5.009) {
$ENV{PATH} = "/bin";
system "pwd";
use lib "tests";
my $file = "cond_or.pl";
unless (my $return = do $file) {
die "couldn't parse $file: $@" if $@;
die "couldn't do $file: $!" unless defined $return;
die "couldn't run $file" unless $return;
}
}
for my $i (0 .. 10) {
$y ||
$x[1]++;
$y ||
$x[0]++ ||
$x[1]++;
$x[2]++
unless $z;
for (0 .. 2) {
$x[3]++;
}
if ($z) {
$x[4]++;
} else {
$x[5]++;
}
my $p = $y || $z;
my $q = $z || $y;
my $r = $i || "qqq";
my $s = $i || [];
my $t = $y | $z;
my $u = $y || 0;
my $v = $y || undef;
my $w = $z || 0;
$p ||= $y;
$p ||= $z;
$x[ 6] ||= $y;
$x[ 7] ||= $z;
$x[ 8] ||= 1;
$x[ 9] ||= {};
$x[10] ||= \"foo";
$x[11] ||= \$y;
$x[12] ||= \*STDIO;
$x[13] ||= sub { 1 };
$x[14] ||= *::foo{SCALAR};
$x[15] ||= *STDIO{IO};
$x[16] ||= bless {}, "XXX";
$x[17] ||= $i == 1;
$w ||= ref($i) eq "SCALAR";
$x[18] ||= <<"EOD";
blah
EOD
cond_dor(\@x) if exists &cond_dor;
sub { $x[19] ||= 1 };
}
# print join(", ", @x), "\n";