[cfe-dev] clang initializer elements that are pointers to other global variables

Chris Lattner clattner at apple.com
Tue Oct 30 09:59:49 PDT 2007

On Oct 19, 2007, at 3:41 AM, Török Edvin wrote:

> Hi,
> I run clang -fsyntax-only on x.i. Everything is ok. I use llvm-gcc to
> generate bitcode, and llc to generate C code again. clang fails to
> compile it.
> It says that the initializer is not constant, and that the variable
> was redeclared.
> gcc and llvm-gcc say the generated C code is ok.

Hi Edwin,

You are absolutely right about this, this is definitely a clang bug.   
At this point, the initializer parsing and decl merging code isn't  
advanced enough to handle LLVM C backend output, sorry :(

> The functions are:
> static inline int llvm_fcmp_ord(double X, double Y) { return X == X  
> && Y == Y; }
> static inline int llvm_fcmp_uno(double X, double Y) { return X != X  
> || Y != Y; }
> I'll discuss these in a separate mail, this one is getting too long.

This should be fixed now,


More information about the cfe-dev mailing list