tst.substr.d.out   [plain text]


#!/usr/perl5/bin/perl

BEGIN {
	if (substr("foobarbazbop", 3) != "barbazbop") {
		printf("perl => substr(\"foobarbazbop\", 3) = \"%s\"\n",
		    substr("foobarbazbop", 3));
		printf("   D => substr(\"foobarbazbop\", 3) = \"%s\"\n",
		    "barbazbop");
		$failed++;
	}

	if (substr("foobarbazbop", 300) != "") {
		printf("perl => substr(\"foobarbazbop\", 300) = \"%s\"\n",
		    substr("foobarbazbop", 300));
		printf("   D => substr(\"foobarbazbop\", 300) = \"%s\"\n",
		    "");
		$failed++;
	}

	if (substr("foobarbazbop", -10) != "obarbazbop") {
		printf("perl => substr(\"foobarbazbop\", -10) = \"%s\"\n",
		    substr("foobarbazbop", -10));
		printf("   D => substr(\"foobarbazbop\", -10) = \"%s\"\n",
		    "obarbazbop");
		$failed++;
	}

	if (substr("foobarbazbop", 0) != "foobarbazbop") {
		printf("perl => substr(\"foobarbazbop\", 0) = \"%s\"\n",
		    substr("foobarbazbop", 0));
		printf("   D => substr(\"foobarbazbop\", 0) = \"%s\"\n",
		    "foobarbazbop");
		$failed++;
	}

	if (substr("foobarbazbop", 1) != "oobarbazbop") {
		printf("perl => substr(\"foobarbazbop\", 1) = \"%s\"\n",
		    substr("foobarbazbop", 1));
		printf("   D => substr(\"foobarbazbop\", 1) = \"%s\"\n",
		    "oobarbazbop");
		$failed++;
	}

	if (substr("foobarbazbop", 11) != "p") {
		printf("perl => substr(\"foobarbazbop\", 11) = \"%s\"\n",
		    substr("foobarbazbop", 11));
		printf("   D => substr(\"foobarbazbop\", 11) = \"%s\"\n",
		    "p");
		$failed++;
	}

	if (substr("foobarbazbop", 12) != "") {
		printf("perl => substr(\"foobarbazbop\", 12) = \"%s\"\n",
		    substr("foobarbazbop", 12));
		printf("   D => substr(\"foobarbazbop\", 12) = \"%s\"\n",
		    "");
		$failed++;
	}

	if (substr("foobarbazbop", 13) != "") {
		printf("perl => substr(\"foobarbazbop\", 13) = \"%s\"\n",
		    substr("foobarbazbop", 13));
		printf("   D => substr(\"foobarbazbop\", 13) = \"%s\"\n",
		    "");
		$failed++;
	}

	if (substr("foobarbazbop", 8, 20) != "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) != "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) != "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) != "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) != "") {
		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) != "") {
		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) != "") {
		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) != "") {
		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) != "") {
		printf("perl => substr(\"foobarbazbop\", 3, -1) = \"%s\"\n",
		    substr("foobarbazbop", 3, -1));
		printf("   D => substr(\"foobarbazbop\", 3, -1) = \"%s\"\n",
		    "");
		$failed++;
	}

	if (substr("foobarbazbop", 0, 400) != "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) != "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) != "") {
		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) != "") {
		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) != "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) != "") {
		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) != "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) != "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) != "foobarbazbo") {
		printf("perl => substr(\"foobarbazbop\", -12, 11) = \"%s\"\n",
		    substr("foobarbazbop", -12, 11));
		printf("   D => substr(\"foobarbazbop\", -12, 11) = \"%s\"\n",
		    "foobarbazbo");
		$failed++;
	}

	exit($failed);
}