lucy-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marvin Humphrey <mar...@rectangular.com>
Subject Re: 64-bit linux errors with t/core/032-string_helper.t
Date Tue, 19 Jan 2010 05:05:32 GMT
On Mon, Jan 18, 2010 at 10:34:46PM -0600, Peter Karman wrote:

> alas, that didn't change the output.

Well, I don't really understand what's going on at this point.

Changing the test to use an int doesn't address the problem, because the whole
point of UTF8_SKIP is to use it on header bytes in a UTF-8 sequence, which
will be unsigned char.

It seems messed up that an unsigned type gets promoted to a negative signed
type when used as an array subscript.  You're not supposed to use "char" on
its own as an array subscript, because whether "char" is signed or unsigned is
implementation defined, but either "signed char" or "unsigned char" are
allowed.

So the next steps are investigatory.  What are the typedefs for u8_t in
charmony.h?  What happens when we swap out u8_t for uint8_t when declaring
UTF8_SKIP in StringHelper.bp?  Does uint8_t work as a subscript?

Marvin Humphrey


Mime
View raw message