PDP-10 / klh10

Community maintained version of Kenneth L. Harrenstien's PDP-10 emulator.
Other
59 stars 7 forks source link

UTF-8 locale #51

Closed Rhialto closed 2 years ago

Rhialto commented 3 years ago

Consider this compiler warning, which I deliberately did not fix:

cc -c  -g3 -O3   -I../src -I../../src  -DKLH10_CPU_KS=1 -DKLH10_SYS_ITS=1 -DKLH10_EVHS_INT=1 -DKLH10_DEV_DPTM03=1 -DKLH10_DEV_DPRPXX=1 -DKLH10_DEV_DPIMP=1 -DKLH10_SIMP=0 -DKLH10_MEM_SHARED=1 -DKLH10_RTIME_OSGET=1 -DKLH10_ITIME_INTRP=1 -DKLH10_QTIME_OSVIRT=1 -DKLH10_IMPIO_INT=1 -DKLH10_CTYIO_INT=1 -DKLH10_APRID_SERIALNO=4097 -DKLH10_CLIENT=\"MyITS\" -DVMTAPE_ITSDUMP=1 -DKLH10_I_CIRC=1  ../../src/klh10.c
In file included from ../../src/klh10.c:59:
/*  Copyright <A9> 2017 Olaf Seibert
^
../../src/klh10.c:391:24: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
    fprintf(f, "%s\n", KLH10_COPYRIGHT);
                   ^~~~~~~~~~~~~~~
../../src/klh10.h:68:15: note: expanded from macro 'KLH10_COPYRIGHT'
Copyright <A9> 2002 Kenneth L. Harrenstien -- All Rights Reserved."
              ^~~~
2 warnings generated.

I would say that the compiler is running in the wrong locale for this particular program: klh10, or rather the operating systems that run in it, doesn't know what to do with utf-8 text and/or terminals.

We can probably fix the locale of the compilation run, but how can we make sure that the user runs klh10 in a proper ASCII or ISO-8859-1 terminal?

larsbrinkhoff commented 3 years ago

We can't. Simple fix: replace with (C).