From: Paul Eggert Date: Wed, 29 May 2019 20:00:26 +0000 (-0700) Subject: Port AC_C_BIGENDIAN to recent clang X-Git-Tag: v2.69b~36 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4677fc349ce759069c9dc8f099a72e77651f1f7b;p=thirdparty%2Fautoconf.git Port AC_C_BIGENDIAN to recent clang Problem and trivial patch reported by Matthieu Gautier in: https://lists.gnu.org/r/bug-autoconf/2019-05/msg00006.html * lib/autoconf/c.m4 (AC_C_BIGENDIAN): Use unsigned short for values greater than 2**15 - 1. --- diff --git a/lib/autoconf/c.m4 b/lib/autoconf/c.m4 index 42c6ac1b..9096b5cc 100644 --- a/lib/autoconf/c.m4 +++ b/lib/autoconf/c.m4 @@ -1648,16 +1648,16 @@ AC_DEFUN([AC_C_BIGENDIAN], [# Try to guess by grepping values from an object file. AC_COMPILE_IFELSE( [AC_LANG_PROGRAM( - [[short int ascii_mm[] = + [[unsigned short int ascii_mm[] = { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; - short int ascii_ii[] = + unsigned short int ascii_ii[] = { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; int use_ascii (int i) { return ascii_mm[i] + ascii_ii[i]; } - short int ebcdic_ii[] = + unsigned short int ebcdic_ii[] = { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; - short int ebcdic_mm[] = + unsigned short int ebcdic_mm[] = { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; int use_ebcdic (int i) { return ebcdic_mm[i] + ebcdic_ii[i];