From mboxrd@z Thu Jan 1 00:00:00 1970 From: Denis Zaitsev Subject: GCC 3.3.2: Some bug in the preprocessor? Date: Fri, 13 Feb 2004 01:29:58 +0500 Sender: gcc-owner@gcc.gnu.org Message-ID: <20040213012958.A14323@zzz.ward.six> Mime-Version: 1.0 Return-path: List-Unsubscribe: List-Archive: List-Post: List-Help: Content-Disposition: inline List-Id: Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: gcc@gcc.gnu.org, linux-gcc@vger.kernel.org Look, this defun returns 0, and this is correct: tst() { #if (unsigned)0 > -1 return 1; #else return 0; #endif } But this one returns 1, and this is incorrect: tst() { #if 0 > (unsigned)-1 return 1; #else return 0; #endif } What's wrong?