George Patterson wrote: > lowlevel.cxx:84: error: invalid conversion from `uint64_t*' > to `long long unsigned int*'
I noticed this too. The problem is that on 64 bit systems the glibc headers have: typedef unsigned long int uint64_t; Which is correct, because a long is a 64 bit type on x86_64. Unfortunately (any C++ standards nutjobs on the list might want to clarify), it seems to be illegal according to the spec to cast between pointers to "long" and "long long", even on platforms where they are of the same size. The identical code compiles fine with no warnings under ANSI C. I suspect the real bug here is that glibc picks a type for uint64_t that C++ thinks is different from the *other* (more portable) 64 bit integer type. But the fix for us is trivial: just change "unsigned long long" to "uint64_t" and it works. Andy _______________________________________________ Flightgear-devel mailing list Flightgear-devel@flightgear.org http://mail.flightgear.org/mailman/listinfo/flightgear-devel 2f585eeea02e2c79d7b1d8c4963bae2d