error in /lib/CodeGen/MachOWriter.cpp: line 200

Hi!

I updated LLVM from CVS today and run into the following error:

/lib/CodeGen/MachOWriter.cpp: line 200: no match for function max(unsigned_int_32, unsigned int)

the line is

Sec.align = std::max(Sec.align, Align);

where Sec.align is of type “unsigned_int_32” and Align is of “unsigned int”.

I use gcc-3.4.4 under cygwin. Сasting of the first parameter to simple unsigned type solved the problem (though casting of the second to unsigned_int_32 may be more correct solution).

Thanks. I can put together a patch if necessary. Though, may be, it’s the problem of my gcc only.

Tony.

Hello Chris

Sat, 2 Sep 2006 11:34:55 -0700 (PDT) you wrote:

Intresting, I guess your gcc is treating uint32_t as different from
unsigned. I applied the patch you suggested, thanks!

Mingw build is ok here (it uses 3.4.4 version), so, difference is
definitely in runtime library.

Intresting, I guess your gcc is treating uint32_t as different from unsigned. I applied the patch you suggested, thanks!

-Chris