On Sun, May 23, 2010 at 5:40 PM, Branko Čibej <br...@xbc.nu> wrote:

>
> This is very, very wrong, because we use the ctypes for other things,
> not just for string literals.


I'm aware that ctypes are used for other things.  I don't see why using
APR's portable version of ctypes across the board would break anything.  I
couldn't find a reason why subversion requires a custom version of ctypes
which happens to be non-portable.


> There is a very deep-rooted assumption
> within the code that inside the library, all strings are encoded in (a
> subset of) UTF-8, and that implies that we expect string literals to be
> in ascii.
>

There certainly are a lot of string literals that are assumed to be UTF-8,
agreed.


> Others have ported Subversion to EBCDIC systems
>

It was OS/400 (aka. iSeries).  OS/390 was an earlier brand name for z/OS.


> but IIRC they always told their compilers to treat the source as
> ASCII. There was a port that used some sort of #pragma or preprocessing,
> I don't recall which, to handle string literals, but it died off because
> it was too easy to just tell the compiler to do the right thing.
>

printf style format strings and args for other (but not all) library
functions are expected to have native encoding on z/OS, so using the
#pragmas is not as easy as I would like.

Greg

Reply via email to