#!/usr/perl5/bin/perl BEGIN { if (substr("foobarbazbop", 3) ne "barbazbop") { printf("perl => substr(\"foobarbazbop\", 3) = \"%s\"\n", substr("foobarbazbop", 3)); printf(" D => substr(\"foobarbazbop\", 3) = \"%s\"\n", "barbazbop"); $failed++; } if (substr("foobarbazbop", 300) ne "") { printf("perl => substr(\"foobarbazbop\", 300) = \"%s\"\n", substr("foobarbazbop", 300)); printf(" D => substr(\"foobarbazbop\", 300) = \"%s\"\n", ""); $failed++; } if (substr("foobarbazbop", -10) ne "obarbazbop") { printf("perl => substr(\"foobarbazbop\", -10) = \"%s\"\n", substr("foobarbazbop", -10)); printf(" D => substr(\"foobarbazbop\", -10) = \"%s\"\n", "obarbazbop"); $failed++; } if (substr("foobarbazbop", 0) ne "foobarbazbop") { printf("perl => substr(\"foobarbazbop\", 0) = \"%s\"\n", substr("foobarbazbop", 0)); printf(" D => substr(\"foobarbazbop\", 0) = \"%s\"\n", "foobarbazbop"); $failed++; } if (substr("foobarbazbop", 1) ne "oobarbazbop") { printf("perl => substr(\"foobarbazbop\", 1) = \"%s\"\n", substr("foobarbazbop", 1)); printf(" D => substr(\"foobarbazbop\", 1) = \"%s\"\n", "oobarbazbop"); $failed++; } if (substr("foobarbazbop", 11) ne "p") { printf("perl => substr(\"foobarbazbop\", 11) = \"%s\"\n", substr("foobarbazbop", 11)); printf(" D => substr(\"foobarbazbop\", 11) = \"%s\"\n", "p"); $failed++; } if (substr("foobarbazbop", 12) ne "") { printf("perl => substr(\"foobarbazbop\", 12) = \"%s\"\n", substr("foobarbazbop", 12)); printf(" D => substr(\"foobarbazbop\", 12) = \"%s\"\n", ""); $failed++; } if (substr("foobarbazbop", 13) ne "") { printf("perl => substr(\"foobarbazbop\", 13) = \"%s\"\n", substr("foobarbazbop", 13)); printf(" D => substr(\"foobarbazbop\", 13) = \"%s\"\n", ""); $failed++; } if (substr("foobarbazbop", 8, 20) ne "zbop") { printf("perl => substr(\"foobarbazbop\", 8, 20) = \"%s\"\n", substr("foobarbazbop", 8, 20)); printf(" D => substr(\"foobarbazbop\", 8, 20) = \"%s\"\n", "zbop"); $failed++; } if (substr("foobarbazbop", 4, 4) ne "arba") { printf("perl => substr(\"foobarbazbop\", 4, 4) = \"%s\"\n", substr("foobarbazbop", 4, 4)); printf(" D => substr(\"foobarbazbop\", 4, 4) = \"%s\"\n", "arba"); $failed++; } if (substr("foobarbazbop", 5, 8) ne "rbazbop") { printf("perl => substr(\"foobarbazbop\", 5, 8) = \"%s\"\n", substr("foobarbazbop", 5, 8)); printf(" D => substr(\"foobarbazbop\", 5, 8) = \"%s\"\n", "rbazbop"); $failed++; } if (substr("foobarbazbop", 5, 9) ne "rbazbop") { printf("perl => substr(\"foobarbazbop\", 5, 9) = \"%s\"\n", substr("foobarbazbop", 5, 9)); printf(" D => substr(\"foobarbazbop\", 5, 9) = \"%s\"\n", "rbazbop"); $failed++; } if (substr("foobarbazbop", 400, 20) ne "") { printf("perl => substr(\"foobarbazbop\", 400, 20) = \"%s\"\n", substr("foobarbazbop", 400, 20)); printf(" D => substr(\"foobarbazbop\", 400, 20) = \"%s\"\n", ""); $failed++; } if (substr("foobarbazbop", 400, 0) ne "") { printf("perl => substr(\"foobarbazbop\", 400, 0) = \"%s\"\n", substr("foobarbazbop", 400, 0)); printf(" D => substr(\"foobarbazbop\", 400, 0) = \"%s\"\n", ""); $failed++; } if (substr("foobarbazbop", 400, -1) ne "") { printf("perl => substr(\"foobarbazbop\", 400, -1) = \"%s\"\n", substr("foobarbazbop", 400, -1)); printf(" D => substr(\"foobarbazbop\", 400, -1) = \"%s\"\n", ""); $failed++; } if (substr("foobarbazbop", 3, 0) ne "") { printf("perl => substr(\"foobarbazbop\", 3, 0) = \"%s\"\n", substr("foobarbazbop", 3, 0)); printf(" D => substr(\"foobarbazbop\", 3, 0) = \"%s\"\n", ""); $failed++; } if (substr("foobarbazbop", 3, -1) ne "barbazbo") { printf("perl => substr(\"foobarbazbop\", 3, -1) = \"%s\"\n", substr("foobarbazbop", 3, -1)); printf(" D => substr(\"foobarbazbop\", 3, -1) = \"%s\"\n", "barbazbo"); $failed++; } if (substr("foobarbazbop", 3, -4) ne "barba") { printf("perl => substr(\"foobarbazbop\", 3, -4) = \"%s\"\n", substr("foobarbazbop", 3, -4)); printf(" D => substr(\"foobarbazbop\", 3, -4) = \"%s\"\n", "barba"); $failed++; } if (substr("foobarbazbop", 3, -20) ne "") { printf("perl => substr(\"foobarbazbop\", 3, -20) = \"%s\"\n", substr("foobarbazbop", 3, -20)); printf(" D => substr(\"foobarbazbop\", 3, -20) = \"%s\"\n", ""); $failed++; } if (substr("foobarbazbop", -10, -5) ne "obarb") { printf("perl => substr(\"foobarbazbop\", -10, -5) = \"%s\"\n", substr("foobarbazbop", -10, -5)); printf(" D => substr(\"foobarbazbop\", -10, -5) = \"%s\"\n", "obarb"); $failed++; } if (substr("foobarbazbop", 0, 400) ne "foobarbazbop") { printf("perl => substr(\"foobarbazbop\", 0, 400) = \"%s\"\n", substr("foobarbazbop", 0, 400)); printf(" D => substr(\"foobarbazbop\", 0, 400) = \"%s\"\n", "foobarbazbop"); $failed++; } if (substr("foobarbazbop", -1, 400) ne "p") { printf("perl => substr(\"foobarbazbop\", -1, 400) = \"%s\"\n", substr("foobarbazbop", -1, 400)); printf(" D => substr(\"foobarbazbop\", -1, 400) = \"%s\"\n", "p"); $failed++; } if (substr("foobarbazbop", -1, 0) ne "") { printf("perl => substr(\"foobarbazbop\", -1, 0) = \"%s\"\n", substr("foobarbazbop", -1, 0)); printf(" D => substr(\"foobarbazbop\", -1, 0) = \"%s\"\n", ""); $failed++; } if (substr("foobarbazbop", -1, -1) ne "") { printf("perl => substr(\"foobarbazbop\", -1, -1) = \"%s\"\n", substr("foobarbazbop", -1, -1)); printf(" D => substr(\"foobarbazbop\", -1, -1) = \"%s\"\n", ""); $failed++; } if (substr("foobarbazbop", -24, 24) ne "foobarbazbop") { printf("perl => substr(\"foobarbazbop\", -24, 24) = \"%s\"\n", substr("foobarbazbop", -24, 24)); printf(" D => substr(\"foobarbazbop\", -24, 24) = \"%s\"\n", "foobarbazbop"); $failed++; } if (substr("foobarbazbop", -24, 12) ne "") { printf("perl => substr(\"foobarbazbop\", -24, 12) = \"%s\"\n", substr("foobarbazbop", -24, 12)); printf(" D => substr(\"foobarbazbop\", -24, 12) = \"%s\"\n", ""); $failed++; } if (substr("foobarbazbop", -24, 13) ne "f") { printf("perl => substr(\"foobarbazbop\", -24, 13) = \"%s\"\n", substr("foobarbazbop", -24, 13)); printf(" D => substr(\"foobarbazbop\", -24, 13) = \"%s\"\n", "f"); $failed++; } if (substr("foobarbazbop", -12, 12) ne "foobarbazbop") { printf("perl => substr(\"foobarbazbop\", -12, 12) = \"%s\"\n", substr("foobarbazbop", -12, 12)); printf(" D => substr(\"foobarbazbop\", -12, 12) = \"%s\"\n", "foobarbazbop"); $failed++; } if (substr("foobarbazbop", -12, 11) ne "foobarbazbo") { printf("perl => substr(\"foobarbazbop\", -12, 11) = \"%s\"\n", substr("foobarbazbop", -12, 11)); printf(" D => substr(\"foobarbazbop\", -12, 11) = \"%s\"\n", "foobarbazbo"); $failed++; } if (substr("CRAIG: Positioned them, I don't know... I'm fairly wide guy.", 100, 10) ne "") { printf("perl => substr(\"CRAIG: Positioned them, I don't know... I'm fairly wide guy.\", 100, 10) = \"%s\"\n", substr("CRAIG: Positioned them, I don't know... I'm fairly wide guy.", 100, 10)); printf(" D => substr(\"CRAIG: Positioned them, I don't know... I'm fairly wide guy.\", 100, 10) = \"%s\"\n", ""); $failed++; } if (substr("CRAIG: Positioned them, I don't know... I'm fairly wide guy.", 100) ne "") { printf("perl => substr(\"CRAIG: Positioned them, I don't know... I'm fairly wide guy.\", 100) = \"%s\"\n", substr("CRAIG: Positioned them, I don't know... I'm fairly wide guy.", 100)); printf(" D => substr(\"CRAIG: Positioned them, I don't know... I'm fairly wide guy.\", 100) = \"%s\"\n", ""); $failed++; } exit($failed); }