Skip to contentSkip to conversation

arm64 allmodconfig failure in expansion of macro ‘_X’

PATCH Will Deacon 2 participants 3 messages Jun 26, 2015

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

Hi all,

arm64 allmodconfig fails to build with mainline due to the following:

In file included from include/acpi/platform/aclinux.h:74:0,

                   from include/acpi/platform/acenv.h:173,
                   from include/acpi/acpi.h:56,
                   from include/linux/acpi.h:37,
                   from ./arch/arm64/include/asm/dma-mapping.h:21,
                   from include/linux/dma-mapping.h:86,
                   from include/linux/skbuff.h:34,
                   from include/crypto/algapi.h:18,
                   from crypto/asymmetric_keys/rsa.c:16:
  include/linux/ctype.h:15:12: error: expected ?;?, ?,? or ?)? before numeric constant
   #define _X 0x40 /* hex digit */
              ^
  crypto/asymmetric_keys/rsa.c:123:47: note: in expansion of macro ?_X?
   static int RSA_I2OSP(MPI x, size_t xLen, u8 **_X)
                                                 ^
  crypto/asymmetric_keys/rsa.c: In function ?RSA_verify_signature?:
  crypto/asymmetric_keys/rsa.c:256:2: error: implicit declaration of function ?RSA_I2OSP? [-Werror=implicit-function-declaration]
    ret = RSA_I2OSP(m, k, &EM);

This is thanks to the following function type:

static int RSA_I2OSP(MPI x, size_t xLen, u8 **__X)

conflicting with the _X #define in linux/ctype.h:

  #define _X      0x40    /* hex digit */

Simple patch below, but solving this problem with more underscores feels slightly inhumane.

Will

--->8

crypto/asymmetric_keys/rsa.c +2 -2
index 459cf97a75e2..a4e53239448b 100644
@@ -120,7 +120,7 @@ static int RSAVP1(const struct public_key *key, MPI s, MPI *_m)
 /*
  * Integer to Octet String conversion [RFC3447 sec 4.1]
  */
-static int RSA_I2OSP(MPI x, size_t xLen, u8 **_X)
+static int RSA_I2OSP(MPI x, size_t xLen, u8 **__X)
 {
 	unsigned X_size, x_size;
 	int X_sign;
@@ -147,7 +147,7 @@ static int RSA_I2OSP(MPI x, size_t xLen, u8 **_X)
 		return -EBADMSG;
 	}
 
-	*_X = X;
+	*__X = X;
 	return 0;
 }
 
maintainer
#1 lore raw
Quoted 27 lines · Will Deacon

Hi all,

arm64 allmodconfig fails to build with mainline due to the following:

In file included from include/acpi/platform/aclinux.h:74:0,

                   from include/acpi/platform/acenv.h:173,
                   from include/acpi/acpi.h:56,
                   from include/linux/acpi.h:37,
                   from ./arch/arm64/include/asm/dma-mapping.h:21,
                   from include/linux/dma-mapping.h:86,
                   from include/linux/skbuff.h:34,
                   from include/crypto/algapi.h:18,
                   from crypto/asymmetric_keys/rsa.c:16:
  include/linux/ctype.h:15:12: error: expected ?;?, ?,? or ?)? before numeric constant
   #define _X 0x40 /* hex digit */
              ^
  crypto/asymmetric_keys/rsa.c:123:47: note: in expansion of macro ?_X?
   static int RSA_I2OSP(MPI x, size_t xLen, u8 **_X)
                                                 ^
  crypto/asymmetric_keys/rsa.c: In function ?RSA_verify_signature?:
  crypto/asymmetric_keys/rsa.c:256:2: error: implicit declaration of function ?RSA_I2OSP? [-Werror=implicit-function-declaration]
    ret = RSA_I2OSP(m, k, &EM);

This is thanks to the following function type:

Quoted 8 lines

static int RSA_I2OSP(MPI x, size_t xLen, u8 **__X)

conflicting with the _X #define in linux/ctype.h:

  #define _X      0x40    /* hex digit */

Simple patch below, but solving this problem with more underscores feels slightly inhumane.

Thanks but I've already merged a similar patch yesterday.

Signature · 3 lines
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
#2 lore raw
Quoted 30 lines · Herbert Xu
Quoted 29 lines · Will Deacon

Hi all,

arm64 allmodconfig fails to build with mainline due to the following:

In file included from include/acpi/platform/aclinux.h:74:0,

                   from include/acpi/platform/acenv.h:173,
                   from include/acpi/acpi.h:56,
                   from include/linux/acpi.h:37,
                   from ./arch/arm64/include/asm/dma-mapping.h:21,
                   from include/linux/dma-mapping.h:86,
                   from include/linux/skbuff.h:34,
                   from include/crypto/algapi.h:18,
                   from crypto/asymmetric_keys/rsa.c:16:
  include/linux/ctype.h:15:12: error: expected ?;?, ?,? or ?)? before numeric constant
   #define _X 0x40 /* hex digit */
              ^
  crypto/asymmetric_keys/rsa.c:123:47: note: in expansion of macro ?_X?
   static int RSA_I2OSP(MPI x, size_t xLen, u8 **_X)
                                                 ^
  crypto/asymmetric_keys/rsa.c: In function ?RSA_verify_signature?:
  crypto/asymmetric_keys/rsa.c:256:2: error: implicit declaration of function ?RSA_I2OSP? [-Werror=implicit-function-declaration]
    ret = RSA_I2OSP(m, k, &EM);

This is thanks to the following function type:

static int RSA_I2OSP(MPI x, size_t xLen, u8 **__X)

Quoted 8 lines
Quoted 6 lines

conflicting with the _X #define in linux/ctype.h:

  #define _X      0x40    /* hex digit */

Simple patch below, but solving this problem with more underscores feels slightly inhumane.

Thanks but I've already merged a similar patch yesterday.

Perfect, sorry for the noise.

Will