豊福です。

|  #define RSHIFT(x,y) (((x)<0) ? ~((~(x))>>y) : (x)>>y)

  #define RSHIFT(x,y) ((x)>>((signed int)(y)))

ではどうでしょう。
---
                        豊福
                        toyofuku / juice.or.jp