This test checks our implementation of the special RegExp member variables.

Properties of RegExp at startup:
$1: {} (read-only)
$2: {} (read-only)
$3: {} (read-only)
$4: {} (read-only)
$5: {} (read-only)
$6: {} (read-only)
$7: {} (read-only)
$8: {} (read-only)
$9: {} (read-only)
input: {} (read-write)

Properties of RegExp after /(1)(2)(3)(4)(5)(6)(7)(8)(9)(0)/.exec(<1234567890>):
$1: {1}
$2: {2}
$3: {3}
$4: {4}
$5: {5}
$6: {6}
$7: {7}
$8: {8}
$9: {9}
input: {<1234567890>}

RegExp.$0 does not exist
RegExp.$10 does not exist
RegExp doesn't use RegExp.input
RegExp.multiline doesn't coerce values to booleans
RegExp.input coerces values to strings

Properties of RegExp after /(1)(2)(3)(4)(5)(6)(7)(8)(9)(0)/.exec(XXX):
$1: {1}
$2: {2}
$3: {3}
$4: {4}
$5: {5}
$6: {6}
$7: {7}
$8: {8}
$9: {9}
input: {0}
multiline: {foo}

---------- [Cleared RegExp values] ----------
Properties of RegExp after <1234567890>.search(/(1)(2)(3)(4)(5)(6)(7)(8)(9)(0)/):
$1: {1}
$2: {2}
$3: {3}
$4: {4}
$5: {5}
$6: {6}
$7: {7}
$8: {8}
$9: {9}
input: {<1234567890>}
multiline: {foo}

---------- [Cleared RegExp values] ----------
Properties of RegExp after <1234567890>.replace(/(1)(2)(3)(4)(5)(6)(7)(8)(9)(0)/):
$1: {1}
$2: {2}
$3: {3}
$4: {4}
$5: {5}
$6: {6}
$7: {7}
$8: {8}
$9: {9}
input: {<1234567890>}
multiline: {foo}

