| pass |  34 | 38 | 37 | 39 |  | 
| ok |  1 | 0 | 1 | 0 |  | 
| N-I |  4 | 0 | 1 | 0 |  | 
| BUG |  0 | 1 | 0 | 0 |  | 
| total | 39 | 39 | 39 | 39 |  | 
 |  |  |  |  |  | 
  
|   0 | pass | 	pass | 	pass | 	pass | 	"${empty:-}" | 
|   1 | pass | 	pass | 	pass | 	pass | 	${empty:-} | 
|   2 | N-I | 	pass | 	N-I | 	pass | 	array with empty values | 
 | details |  | details |  |  | 
|   3 | pass | 	pass | 	pass | 	pass | 	substitution of IFS character, quoted and unquoted | 
|   4 | pass | 	pass | 	pass | 	pass | 	:- | 
|   5 | pass | 	pass | 	pass | 	pass | 	- | 
|   6 | pass | 	pass | 	pass | 	pass | 	Inner single quotes | 
|   7 | pass | 	pass | 	pass | 	pass | 	Inner single quotes, outer double quotes | 
|   8 | pass | 	pass | 	pass | 	pass | 	Inner double quotes | 
|   9 | pass | 	pass | 	pass | 	pass | 	Inner double quotes, outer double quotes | 
|  10 | pass | 	pass | 	pass | 	pass | 	Multiple words: no quotes | 
|  11 | pass | 	pass | 	pass | 	pass | 	Multiple words: no outer quotes, inner single quotes | 
|  12 | pass | 	pass | 	pass | 	pass | 	Multiple words: no outer quotes, inner double quotes | 
|  13 | pass | 	pass | 	pass | 	pass | 	Multiple words: outer double quotes, no inner quotes | 
|  14 | pass | 	pass | 	pass | 	pass | 	Multiple words: outer double quotes, inner double quotes | 
|  15 | pass | 	pass | 	pass | 	pass | 	Multiple words: outer double quotes, inner single quotes | 
|  16 | pass | 	pass | 	pass | 	pass | 	Mixed inner quotes | 
|  17 | pass | 	pass | 	pass | 	pass | 	Mixed inner quotes with outer quotes | 
|  18 | pass | 	pass | 	pass | 	pass | 	part_value tree with multiple words | 
|  19 | pass | 	pass | 	pass | 	pass | 	part_value tree on RHS | 
|  20 | pass | 	pass | 	pass | 	pass | 	Var with multiple words: no quotes | 
|  21 | pass | 	pass | 	pass | 	pass | 	Multiple words: no outer quotes, inner single quotes | 
|  22 | pass | 	pass | 	pass | 	pass | 	Multiple words: no outer quotes, inner double quotes | 
|  23 | pass | 	pass | 	pass | 	pass | 	Multiple words: outer double quotes, no inner quotes | 
|  24 | pass | 	pass | 	pass | 	pass | 	Multiple words: outer double quotes, inner double quotes | 
|  25 | pass | 	pass | 	pass | 	pass | 	Multiple words: outer double quotes, inner single quotes | 
|  26 | pass | 	pass | 	pass | 	pass | 	No outer quotes, Multiple internal quotes | 
|  27 | pass | 	pass | 	pass | 	pass | 	Strip a string with single quotes, unquoted | 
|  28 | pass | 	pass | 	pass | 	pass | 	Strip a string with single quotes, double quoted | 
|  29 | pass | 	pass | 	pass | 	pass | 	The string to strip is space sensitive | 
|  30 | pass | 	pass | 	pass | 	pass | 	The string to strip can be single quoted, outer is unquoted | 
|  31 | pass | 	pass | 	ok | 	pass | 	Syntax error for single quote in double quote | 
 |  |  | details |  |  | 
|  32 | ok | 	pass | 	pass | 	pass | 	"${undef-'c d'}" and "${foo%'c d'}" are parsed differently | 
 | details |  |  |  |  | 
|  33 | N-I | 	pass | 	pass | 	pass | 	$'' allowed within VarSub arguments | 
 | details |  |  |  |  | 
|  34 | pass | 	pass | 	pass | 	pass | 	# operator with single quoted arg (dash/ash and bash/mksh disagree, reported by Crestwave) | 
|  35 | N-I | 	pass | 	pass | 	pass | 	/ operator with single quoted arg (causes syntax error in regex in OSH, reported by Crestwave) | 
 | details |  |  |  |  | 
|  36 | N-I | 	pass | 	pass | 	pass | 	single quotes work inside character classes | 
 | details |  |  |  |  | 
|  37 | pass | 	pass | 	pass | 	pass | 	comparison: :- operator with single quoted arg | 
|  38 | pass | 	BUG | 	pass | 	pass | 	Right Brace as argument (similar to #702) | 
 |  | details |  |  |  |