1*e6298b92Srillig /* $NetBSD: msg_120.c,v 1.7 2023/07/07 19:45:22 rillig Exp $ */ 2a0a15c14Srillig # 3 "msg_120.c" 3a0a15c14Srillig 473fb62d3Srillig // Test for message: bitwise '%s' on signed value nonportable [120] 5a0a15c14Srillig 6*e6298b92Srillig /* lint1-extra-flags: -p -X 351 */ 7e3ae774eSrillig 8e3ae774eSrillig int shr(int a,int b)9e3ae774eSrilligshr(int a, int b) 10e3ae774eSrillig { 1165e5c21bSrillig /* expect+1: warning: bitwise '>>' on signed value possibly nonportable [117] */ 1265e5c21bSrillig return a >> b; 13e3ae774eSrillig } 14e3ae774eSrillig 15e3ae774eSrillig int shr_lhs_constant_positive(int a)16e3ae774eSrilligshr_lhs_constant_positive(int a) 17e3ae774eSrillig { 18e3ae774eSrillig return 0x1234 >> a; 19e3ae774eSrillig } 20e3ae774eSrillig 21e3ae774eSrillig int shr_lhs_constant_negative(int a)22e3ae774eSrilligshr_lhs_constant_negative(int a) 23e3ae774eSrillig { 2465e5c21bSrillig /* expect+1: warning: bitwise '>>' on signed value nonportable [120] */ 2565e5c21bSrillig return -0x1234 >> a; 26e3ae774eSrillig } 27e3ae774eSrillig 28e3ae774eSrillig int shr_rhs_constant_positive(int a)29e3ae774eSrilligshr_rhs_constant_positive(int a) 30e3ae774eSrillig { 3165e5c21bSrillig /* expect+2: warning: bitwise '>>' on signed value possibly nonportable [117] */ 3265e5c21bSrillig /* expect+1: warning: shift amount 4660 is greater than bit-size 32 of 'int' [122] */ 3365e5c21bSrillig return a >> 0x1234; 34e3ae774eSrillig } 35e3ae774eSrillig 36e3ae774eSrillig int shr_rhs_constant_negative(int a)37e3ae774eSrilligshr_rhs_constant_negative(int a) 38e3ae774eSrillig { 3965e5c21bSrillig /* expect+2: warning: bitwise '>>' on signed value possibly nonportable [117] */ 4065e5c21bSrillig /* expect+1: warning: negative shift [121] */ 4165e5c21bSrillig return a >> -0x1234; 42e3ae774eSrillig } 43