13.9.2010 10:39, Dennis, CHENG Renquan kirjoitti:

So maybe the Gentoo distro has some problem...

No, I've tried compiling gcc-4.6-20100911 on ubuntu 10.04, the same
problem also happened;

and I also found that macro was defined in a generated header file, in
the gcc build directory;

renq...@flyer-1-1:~/src/gcc-4.6-build$ grep -RsInw
ggc_alloc_cleared_lang_type gcc/
gcc/gtype-desc.h:2451:#define ggc_alloc_cleared_lang_type() ((struct
lang_type *)(ggc_internal_cleared_alloc_stat (sizeof (struct
lang_type) MEM_STAT_INFO)))

In all stages during the native bootstrap this define was :

gtype-desc.h:#define ggc_alloc_cleared_lang_type(SIZE) ((struct lang_type *)(ggc_internal_cleared_alloc_stat (SIZE MEM_STAT_INFO)))

in Fedora 13 with the earlier gcc-4.6-20100904 snapshot...

this definition just doesn't accept any arguments, but inside
gcc/c-decl.c:7028 and 7311:

         space = ggc_alloc_cleared_lang_type (sizeof (struct lang_type));

   lt = ggc_alloc_cleared_lang_type (sizeof (struct lang_type));

both passes 1 argument, so the compiler report error, so the problem
is how can you succeed compiling that?

My RedHat-based systems (CentOS, Fedora) will generate a different
'#define' for this. Why the Gentoo and Ubuntu are working differently
is hard to say... Ok, I can try also Ubuntu 10.04 so let's see what
it does...

Reply via email to