mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	samples: add Terra samples
source: https://github.com/zdevito/terra/tree/master/tests
This commit is contained in:
		
							
								
								
									
										31
									
								
								samples/Terra/indexingbug.t
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								samples/Terra/indexingbug.t
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,31 @@
 | 
			
		||||
arr = terralib.new(int[256])
 | 
			
		||||
 | 
			
		||||
arr[252] = 12
 | 
			
		||||
 | 
			
		||||
terra foo(arr : &int)
 | 
			
		||||
  var idx = [uint8](252)
 | 
			
		||||
  return arr[idx]
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
terra foo2(arr : &int)
 | 
			
		||||
  var idx = [uint8](252)
 | 
			
		||||
  return @(arr + idx)
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
terra foo3(arr : &int)
 | 
			
		||||
  var idx = [int8](-3)
 | 
			
		||||
  arr = arr + 255
 | 
			
		||||
  return @(arr + idx)
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
terra foo4(arr : &int)
 | 
			
		||||
  var idx = [int8](-3)
 | 
			
		||||
  arr = arr + 255
 | 
			
		||||
  return arr[idx]
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
assert(foo2(arr) == 12)
 | 
			
		||||
assert(foo(arr) == 12)
 | 
			
		||||
assert(foo3(arr) == 12)
 | 
			
		||||
assert(foo4(arr) == 12)
 | 
			
		||||
		Reference in New Issue
	
	Block a user