+/* See the comments on U_SIGNED_RIGHT_SHIFT_IS_ARITHMETIC. */
+static void TestSignedRightShiftIsArithmetic() {
+ int32_t x=0xfff5fff3;
+ int32_t m=-1;
+ int32_t x4=x>>4;
+ int32_t m1=m>>1;
+ UBool signedRightShiftIsArithmetic= x4==0xffff5fff && m1==-1;
+ if(signedRightShiftIsArithmetic==U_SIGNED_RIGHT_SHIFT_IS_ARITHMETIC) {
+ log_info("signed right shift is Arithmetic Shift Right: %d\n",
+ signedRightShiftIsArithmetic);
+ } else {
+ log_err("error: unexpected signed right shift is Arithmetic Shift Right: %d\n"
+ " You need to change the value of U_SIGNED_RIGHT_SHIFT_IS_ARITHMETIC "
+ "for your platform.\n",
+ signedRightShiftIsArithmetic);
+ }
+}