For more fun in the same vein, try this:
length S0 end In both cases the problem is that we're not checking the STRING* pointer passed to the function before we start trying to dereference it. This seems to be a fairly generic problem in the string functions, unfortunately - a brief look suggests that string_ord is the only one doing the right thing. Simon