diff options
| author | J08nY | 2025-03-20 16:22:28 +0100 |
|---|---|---|
| committer | J08nY | 2025-03-20 16:22:47 +0100 |
| commit | efa899bab078ef57d55ffbde9343d1320a9b08a0 (patch) | |
| tree | 0938d637fc389175c346e7e41057f71eb43638d6 /src/misc | |
| parent | ce6f2ddbb6c1cd718f3e093e71eddb7ab4a69f07 (diff) | |
| download | ecgen-efa899bab078ef57d55ffbde9343d1320a9b08a0.tar.gz ecgen-efa899bab078ef57d55ffbde9343d1320a9b08a0.tar.zst ecgen-efa899bab078ef57d55ffbde9343d1320a9b08a0.zip | |
Fix discriminant iteration in CM with composite order.
The prime impl is still broken. The family gen is as well.
Diffstat (limited to 'src/misc')
| -rw-r--r-- | src/misc/compat.h | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/src/misc/compat.h b/src/misc/compat.h index 7e3d4e8..ccacb2e 100644 --- a/src/misc/compat.h +++ b/src/misc/compat.h @@ -12,17 +12,24 @@ #define PARI_VERSION_MINOR (((PARI_VERSION_CODE) >> 8) & 0xff) #define PARI_VERSION_MAJOR (PARI_VERSION_CODE >> 16) -#define PARI_VERSION_GT(a,b,c) ((PARI_VERSION_MAJOR == a && PARI_VERSION_MINOR == b && PARI_VERSION_PATCH > c) || (PARI_VERSION_MAJOR == a && PARI_VERSION_MINOR > b) || (PARI_VERSION_MAJOR > a)) -#define PARI_VERSION_EQ(a,b,c) (PARI_VERSION_MAJOR == a && PARI_VERSION_MINOR == b && PARI_VERSION_PATCH == c) -#define PARI_VERSION_GE(a,b,c) (PARI_VERSION_GT(a,b,c) || PARI_VERSION_EQ(a,b,c)) -#define PARI_VERSION_LT(a,b,c) !(PARI_VERSION_GE(a,b,c)) -#define PARI_VERSION_LE(a,b,c) !(PARI_VERSION_GT(a,b,c)) +#define PARI_VERSION_GT(a, b, c) \ + ((PARI_VERSION_MAJOR == a && PARI_VERSION_MINOR == b && \ + PARI_VERSION_PATCH > c) || \ + (PARI_VERSION_MAJOR == a && PARI_VERSION_MINOR > b) || \ + (PARI_VERSION_MAJOR > a)) +#define PARI_VERSION_EQ(a, b, c) \ + (PARI_VERSION_MAJOR == a && PARI_VERSION_MINOR == b && \ + PARI_VERSION_PATCH == c) +#define PARI_VERSION_GE(a, b, c) \ + (PARI_VERSION_GT(a, b, c) || PARI_VERSION_EQ(a, b, c)) +#define PARI_VERSION_LT(a, b, c) !(PARI_VERSION_GE(a, b, c)) +#define PARI_VERSION_LE(a, b, c) !(PARI_VERSION_GT(a, b, c)) -#if PARI_VERSION_LT(2,12,1) +#if PARI_VERSION_LT(2, 12, 1) #define polisirreducible isirreducible #endif -#if PARI_VERSION_LT(2,15,0) +#if PARI_VERSION_LT(2, 15, 0) #define znorder(x, o) order(x); #endif |
