On 12/07/06, Joseph Fannin <[email protected]> wrote:
On Tue, Jul 11, 2006 at 02:00:05PM +0100, Catalin Marinas wrote:
> That's a bug in gcc-4. The __builtin_constant_p() function always
> returns true even when the argument is not a constant. You could try a
> gcc-3.4 or a patched gcc.
Which gcc versions are affected by this?
From gcc-4.0 I think but I don't know when/if it was fixed in the
latest. I use CodeSourcery's toolchain and they fixed in in gcc-4.1
but that's with their own patches. Try to compile the code below. It
should work if the toolchain is OK:
#include <stdlib.h>
#define EXPR atoi(argv[1])
int main(int argc, char *argv[])
{
static int a[] = {
__builtin_constant_p(EXPR) ? EXPR : 0
};
return a[0];
}
--
Catalin
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]