Skip to content

Commit

Permalink
Merge pull request #105 from embray/bugs/long-double-3
Browse files Browse the repository at this point in the history
Fix some broken declarations and imports when not HAVE_LONG_DOUBLE
  • Loading branch information
malb committed Nov 13, 2017
2 parents 5a1f3f0 + 6c44f7b commit 23ba55f
Show file tree
Hide file tree
Showing 5 changed files with 22 additions and 14 deletions.
6 changes: 3 additions & 3 deletions src/fpylll/fplll/decl.pxd
Original file line number Diff line number Diff line change
Expand Up @@ -396,9 +396,9 @@ ELSE:
Enumeration[Z_NR[long], FP_NR[mpfr_t]] *long_mpfr
ELSE:
ctypedef union enumeration_core_t:
Enumeration[FP_NR[d_t]] *d
Enumeration[FP_NR[dpe_t]] *dpe
Enumeration[FP_NR[mpfr_t]] *mpfr
Enumeration[Z_NR[mpz_t], FP_NR[d_t]] *mpz_d
Enumeration[Z_NR[mpz_t], FP_NR[dpe_t]] *mpz_dpe
Enumeration[Z_NR[mpz_t], FP_NR[mpfr_t]] *mpz_mpfr
Enumeration[Z_NR[long], FP_NR[d_t]] *long_d
Enumeration[Z_NR[long], FP_NR[dpe_t]] *long_dpe
Enumeration[Z_NR[long], FP_NR[mpfr_t]] *long_mpfr
Expand Down
5 changes: 4 additions & 1 deletion src/fpylll/fplll/enumeration.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,14 @@ from fplll cimport dpe_t
from fpylll.mpfr.mpfr cimport mpfr_t
from decl cimport gso_mpz_d, gso_mpz_ld, gso_mpz_dpe, gso_mpz_mpfr, fp_nr_t
from decl cimport gso_long_d, gso_long_ld, gso_long_dpe, gso_long_mpfr
from decl cimport d_t, ld_t
from decl cimport d_t
from fplll cimport FT_DOUBLE, FT_LONG_DOUBLE, FT_DPE, FT_MPFR, FloatType

from fplll cimport multimap

IF HAVE_LONG_DOUBLE:
from decl cimport ld_t

IF HAVE_QD:
from decl cimport gso_mpz_dd, gso_mpz_qd, gso_long_dd, gso_long_qd, dd_t, qd_t
from fplll cimport FT_DD, FT_QD
Expand Down
5 changes: 4 additions & 1 deletion src/fpylll/fplll/gso.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ from cysignals.signals cimport sig_on, sig_off

from decl cimport gso_mpz_d, gso_mpz_ld, gso_mpz_dpe, gso_mpz_mpfr, fp_nr_t, zz_mat_core_t
from decl cimport gso_long_d, gso_long_ld, gso_long_dpe, gso_long_mpfr
from decl cimport d_t, ld_t
from decl cimport d_t
from fplll cimport FT_DOUBLE, FT_LONG_DOUBLE, FT_DPE, FT_MPFR, FloatType
from fplll cimport ZT_LONG, ZT_MPZ, IntType
from fplll cimport GSO_DEFAULT
Expand All @@ -37,6 +37,9 @@ from fpylll.mpfr.mpfr cimport mpfr_t
from fpylll.util cimport preprocess_indices, check_float_type
from integer_matrix cimport IntegerMatrix

IF HAVE_LONG_DOUBLE:
from decl cimport ld_t

IF HAVE_QD:
from decl cimport gso_mpz_dd, gso_mpz_qd, gso_long_dd, gso_long_qd, dd_t, qd_t
from fplll cimport FT_DD, FT_QD
Expand Down
11 changes: 8 additions & 3 deletions src/fpylll/fplll/lll.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,13 @@ from fplll cimport FloatType
from fpylll.util cimport check_float_type, check_delta, check_eta, check_precision
from fpylll.util import ReductionError

from decl cimport d_t, ld_t
from decl cimport d_t
from decl cimport gso_mpz_d, gso_mpz_ld, gso_mpz_dpe, gso_mpz_mpfr
from decl cimport gso_long_d, gso_long_ld, gso_long_dpe, gso_long_mpfr

IF HAVE_LONG_DOUBLE:
from decl cimport ld_t

IF HAVE_QD:
from decl cimport gso_mpz_dd, gso_mpz_qd, gso_long_dd, gso_long_qd, dd_t, qd_t

Expand Down Expand Up @@ -66,15 +69,17 @@ cdef class LLLReduction:
check_eta(eta)

cdef MatGSO_c[Z_NR[mpz_t], FP_NR[d_t]] *m_mpz_double
cdef MatGSO_c[Z_NR[mpz_t], FP_NR[ld_t]] *m_mpz_ld
IF HAVE_LONG_DOUBLE:
cdef MatGSO_c[Z_NR[mpz_t], FP_NR[ld_t]] *m_mpz_ld
cdef MatGSO_c[Z_NR[mpz_t], FP_NR[dpe_t]] *m_mpz_dpe
IF HAVE_QD:
cdef MatGSO_c[Z_NR[mpz_t], FP_NR[dd_t]] *m_mpz_dd
cdef MatGSO_c[Z_NR[mpz_t], FP_NR[qd_t]] *m_mpz_qd
cdef MatGSO_c[Z_NR[mpz_t], FP_NR[mpfr_t]] *m_mpz_mpfr

cdef MatGSO_c[Z_NR[long], FP_NR[d_t]] *m_long_double
cdef MatGSO_c[Z_NR[long], FP_NR[ld_t]] *m_long_ld
IF HAVE_LONG_DOUBLE:
cdef MatGSO_c[Z_NR[long], FP_NR[ld_t]] *m_long_ld
cdef MatGSO_c[Z_NR[long], FP_NR[dpe_t]] *m_long_dpe
IF HAVE_QD:
cdef MatGSO_c[Z_NR[long], FP_NR[dd_t]] *m_long_dd
Expand Down
9 changes: 3 additions & 6 deletions src/fpylll/fplll/pruner.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ from cysignals.signals cimport sig_on, sig_off
from cython.operator cimport dereference as deref, preincrement as inc

from decl cimport fp_nr_t, mpz_t, dpe_t, mpfr_t
from decl cimport nr_d, nr_dpe, nr_mpfr, pruner_core_t, d_t, ld_t
from fplll cimport FT_DOUBLE, FT_DPE, FT_MPFR, FloatType
from decl cimport nr_d, nr_dpe, nr_mpfr, pruner_core_t, d_t
from fplll cimport FT_DOUBLE, FT_LONG_DOUBLE, FT_DPE, FT_MPFR, FloatType
from fplll cimport PRUNER_METRIC_PROBABILITY_OF_SHORTEST, PRUNER_METRIC_EXPECTED_SOLUTIONS
from fplll cimport FP_NR, Z_NR
from fplll cimport MatGSO as MatGSO_c
Expand All @@ -45,12 +45,9 @@ from fpylll.util import adjust_radius_to_gh_bound, precision, FPLLL
from fpylll.util cimport check_float_type, check_precision, check_pruner_metric

IF HAVE_LONG_DOUBLE:
from fplll cimport FT_LONG_DOUBLE
from decl cimport gso_mpz_ld
from decl cimport nr_ld
from decl cimport nr_ld, ld_t

IF HAVE_QD:
from decl cimport gso_mpz_dd, gso_mpz_qd
from decl cimport nr_dd, nr_qd, dd_t, qd_t
from fplll cimport FT_DD, FT_QD

Expand Down

0 comments on commit 23ba55f

Please sign in to comment.