On Wed, Nov 8, 2017 at 5:48 AM, Tony Finch <dot@dotat.at> wrote:
Nelson H. F. Beebe <beebe@math.utah.edu> wrote:
>
>       % cat *.log | grep '^ char type is' | sort | uniq -c
>           157         char type is          signed
>             3         char type is          unsigned
>
> The sole outliers are
>
>       * Arch Linux ARM on armv7l
>       * IBM CentOS Linux release 7.4.1708 on PowerPC-8
>       * SGI IRIX 6.5 on MIPS R10000-SC

Nice survey, thanks!

I learned C using the Norcroft C compiler on early Acorn / ARM machines
where char was unsigned. That is still the case, though ARM have switched
from Norcroft to clang.

http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0774h/kpr1493281322162.html

(And I started learning about unix from reading articles about RISC iX,
Acorn's 4.3BSD port to the Archimedes.)

ARM's pre-EABI ABIs dictated that char be unsigned. It's all dictated by the ABI that's implemented, and less about which compiler is used. Now that EABI is basically mainstream, unsigned characters on ARM has become a historic oddity.

Warner