14 lines
		
	
	
		
			474 B
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			14 lines
		
	
	
		
			474 B
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
v='*.z'
 | 
						|
[[ a.z = *.z ]]; echo 1:YES:$?
 | 
						|
[[ a.z = "*".z ]]; echo 2:no:$?
 | 
						|
[[ a.z == $v ]]; echo 3:YES:$?
 | 
						|
 | 
						|
# Buggy:
 | 
						|
# the problem is that expansion rules of LHS and RHS of ~=
 | 
						|
# should not be the same: in RHS, "$v" and "*" should escape metas
 | 
						|
# (currently "$v" does not),
 | 
						|
# but in LHS, they should _not_ do that
 | 
						|
# (currently "*" does). Thus these cases fail:
 | 
						|
#[[ a.z == "$v" ]]; echo 4:no:$?	# BUG: "$v" expands to *.z
 | 
						|
#[[ "*".z == ?.z ]]; echo 5:YES:$?	# BUG: "*" expands to \*
 |