table: i8 -128 was being cast to int closes #4164
							parent
							
								
									3b621c0ce6
								
							
						
					
					
						commit
						f58875a202
					
				| 
						 | 
				
			
			@ -903,22 +903,26 @@ fn (table &Table) cgen_name_type_pair(name, typ string) string {
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
fn is_valid_int_const(val, typ string) bool {
 | 
			
		||||
	x := val.int()
 | 
			
		||||
	return match typ {
 | 
			
		||||
	// x := val.int()
 | 
			
		||||
	match typ {
 | 
			
		||||
		'char'{
 | 
			
		||||
			0 <= x && x <= 255
 | 
			
		||||
			x := val.int()
 | 
			
		||||
			return 0 <= x && x <= 255
 | 
			
		||||
		}
 | 
			
		||||
		'byte'{
 | 
			
		||||
			0 <= x && x <= 255
 | 
			
		||||
			x := val.int()
 | 
			
		||||
			return 0 <= x && x <= 255
 | 
			
		||||
		}
 | 
			
		||||
		'u16'{
 | 
			
		||||
			0 <= x && x <= 65535
 | 
			
		||||
			x := val.u16()
 | 
			
		||||
			return 0 <= x && x <= 65535
 | 
			
		||||
		}
 | 
			
		||||
		// case 'u32': return 0 <= x && x <= math.MaxU32
 | 
			
		||||
		// case 'u64': return 0 <= x && x <= math.MaxU64
 | 
			
		||||
		// ////////////
 | 
			
		||||
		'i8'{
 | 
			
		||||
			-128 <= x && x <= 127
 | 
			
		||||
			x := val.i8()
 | 
			
		||||
			return -128 <= x && x <= 127
 | 
			
		||||
		}
 | 
			
		||||
		/*
 | 
			
		||||
	case 'i16': return math.min_i16 <= x && x <= math.max_i16
 | 
			
		||||
| 
						 | 
				
			
			@ -929,7 +933,7 @@ fn is_valid_int_const(val, typ string) bool {
 | 
			
		|||
		// x64 := val.i64()
 | 
			
		||||
		// return i64(-(1<<63)) <= x64 && x64 <= i64((1<<63)-1)
 | 
			
		||||
		else {
 | 
			
		||||
			true}}
 | 
			
		||||
			return true}}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
fn (p mut Parser) typ_to_fmt(typ string, level int) string {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue