Commit Graph

543 Commits

Author SHA1 Message Date
Andreas Fabri 6f5df75fc1 typo 2017-05-02 08:50:52 +02:00
Andreas Fabri 89511dac57 Remove dynamic exception declarations 2017-04-29 11:18:11 +02:00
Andreas Fabri 5146949d35 Remove dynamic exception declarations 2017-04-27 08:27:43 +02:00
Andreas Fabri 1e92625291 Algebraic_kernel_d: Remove dynamic exception specifications. Fixes Issue #1886 2017-04-03 11:52:48 +02:00
Andreas Fabri 2ff17176fc make static variables thread local 2016-12-02 13:21:53 +01:00
Laurent Rineau 3686301c57 Merge pull request #1596 from afabri/Algebraic_kernel_d-fix_warning-GF
Use CGAL_assertion_code
2016-10-24 11:47:08 +02:00
Laurent Rineau b4cf181609 Merge pull request #1572 from luis4a0/Algebraic_kernel_d-add_assertions-Luis
Check for the MPFR version in RS-based AK
2016-10-24 11:47:02 +02:00
Laurent Rineau 3e0ab881c1 Merge pull request #1584 from afabri/Installation-compute_dependencies-GF
Make Algebraic_kernel_d independent from CGAL/Arr_enum.h
2016-10-20 09:47:42 +02:00
Andreas Fabri 165fd63364 Use CGAL_assertion_code 2016-10-19 14:38:49 +02:00
Luis Peñaranda 275581537b CGAL_NO_ASSERTIONS -> CGAL_NO_PRECONDITIONS 2016-10-18 12:57:49 -03:00
Andreas Fabri 76d751be01 Use CGAL_FALLTHROUGH 2016-10-17 13:45:42 +02:00
Andreas Fabri 554bd0fd26 Make Algebraic_kernel_d independent from CGAL/Arr_enum.h
Introduce Box_parameterization_2 in CGAL/enum.h
Add a typedef and constants in the Arrangement package to stay bw compatible
2016-10-17 11:56:43 +02:00
Luis Peñaranda bceff2255f Avoid also MPFR 3.1.3. Improve error message. 2016-10-13 10:17:59 -03:00
Luis Peñaranda 07fb6dd2a4 Abort compilation if MPFR is 3.1.4 or 3.1.5.
Those two versions have a bug in memory allocation. The bug appears when
changing the allocation functions back and forth. In the beginning, MPFR
3.1.4 and 3.1.5 gather the GMP allocation functions and always use them. If
they are changed, MPFR does never notice that. This behavior was removed in
a patch to 3.1.5, what means that everything should be OK with MPFR 3.2.0.
2016-10-12 18:36:01 -03:00
Luis Peñaranda 5989d7d8af Enforced const-correctness in algebraic numbers.
Since the endpoints are mutable, functions that refine algebraic numbers
must be const.
2016-08-17 15:00:51 -03:00
Luis Peñaranda ab322e764c Add assertion to the K-isolator.
After RS isolates the roots and before RS3 refines them, it is asserted
that they are well formed (left<=right).
2016-08-12 17:03:26 -03:00
Luis Peñaranda c21a198a93 Added assertion in RS2 calls.
When the isolator calls the function to add roots to the output, it is
checked that the roots are well formed (left<=right).
2016-08-12 17:01:01 -03:00
Luis Peñaranda c2fc680dbd Forgot an include.
It's to convert a polynomial to an integer polynomial with the same roots.
2016-08-12 17:00:04 -03:00
Luis Peñaranda 5089db3e37 Add assertions in refiners.
The assertions check that the endpoints of the interval to refine have
different evaluation signs, or they are the same point and its evaluation
is zero.
2016-08-12 15:44:37 -03:00
Guillaume Damiand 10469f9c4e Update with master 2016-05-25 10:58:55 +02:00
Clement Jamin 9a61b23b55 Use get_default_random() instead of default_random 2016-03-09 10:35:21 +01:00
Andreas Fabri beb1417477 remove unused header files; remove commented includes; changed include paths 2016-02-15 14:20:12 +01:00
Monique Teillaud e252190efe typo
typo in a comment (mentioned by Paul Zimmermann)
2015-09-30 11:51:57 +02:00
Andreas Fabri 1e2ff1131e assert -> CGAL_assertion 2015-08-27 16:51:55 +02:00
Philipp Möller 236ae3f9d3 Remove two unused includes of pool_allocator 2015-04-10 14:48:33 +02:00
Laurent Rineau ff62595012 Merge branch 'CGAL-fix_compilation_boost_1_56-lrineau'
Fix compilation issues with Boost-1.56 and later.

Approved by the Release Manager.
2015-01-26 11:42:29 +01:00
Andreas Fabri c8beb40409 remove unused typedef 2015-01-15 12:51:28 +01:00
Laurent Rineau e965b6293e Fix compilation errors with C++11 and Boost-1.56
Use *explicit* conversions to `bool`, for boost::shared_ptr and
boost::optional.
2015-01-14 14:47:29 +01:00
Andreas Fabri e5fca48f26 removed unused type 2015-01-14 11:43:15 +01:00
Laurent Rineau be079cb5a3 Fix compilation with Boost-1.56 and later
In Boost-1.56 and later, with C++11, boost::optional::operator bool() is
explicit.
2015-01-13 16:21:04 +01:00
Andreas Fabri 30faf6241b Add wrappers around 2 boost headers to push/pop pragma 2014-12-19 16:10:02 +01:00
Laurent Rineau ff8a7bbe3c Fix a compilation error with VC9 2014-03-26 16:04:57 +01:00
Andreas Fabri a707607f66 Turn copy constructor into a real default constructor 2014-03-19 11:59:04 +01:00
Andreas Fabri 2097f37ab7 Split constructor in default and copy constructor 2014-03-18 16:27:54 +01:00
Laurent Rineau 13c69d52c1 Fix license of AK_d headers for RS support
AK_d is under LGPLv3+, and not v2.1 only. Luis copied-pasted from files
with that license by error.
2014-02-10 10:41:10 +01:00
Luis Peñaranda 13f73f44d3 use the z-kernel as the default for Gmpq 2013-12-15 11:26:40 -03:00
Luis Peñaranda d33d8bf2cc added the z-kernel, for types different than Gmpz 2013-12-13 15:32:02 -03:00
Luis Peñaranda 89c5170ee0 move #include to the correct file 2013-12-13 15:31:19 -03:00
Luis Peñaranda b5a1cc9883 fix bug in i686 tests
Use Gmpfr arithmetic for exact sign computation only in 64-bit systems.
2013-12-12 15:42:11 -03:00
Luis Peñaranda 3aa833c0fc add rational k-refinement with -DCGAL_RS_USE_K 2013-12-06 08:49:58 -03:00
Luis Peñaranda f8c35e179b use RS3 refiner in rational kernel 2013-12-06 08:29:26 -03:00
Luis Peñaranda eb0479fe76 use the converter to convert int to rat poly 2013-12-05 01:08:41 -03:00
Luis Peñaranda ea670a3a63 use mpfr for exact sign computation instead of mpq
This change applies only when the coefficient type is Gmpz and the bound
type is Gmpfr.
2013-11-26 20:21:45 -02:00
Luis Peñaranda 68f368020d use exact division when possible 2013-11-26 17:13:26 -02:00
Luis Peñaranda 112385eef0 added rational kernel
Given that the integer kernel works like a charm, I put the rational
one.
2013-11-23 02:44:59 -02:00
Luis Peñaranda 7f47236d30 avoided some warnings with -Wunused-local-typedefs 2013-11-22 01:44:43 -02:00
Luis Peñaranda bf9a0db244 avoid some g++ -Wall warnings 2013-11-20 23:55:17 -02:00
Luis Peñaranda fb9bccbc71 removed a failing 'typename' keyword 2013-11-20 12:06:29 -02:00
Luis Peñaranda dfa7218c85 added missing file 2013-11-19 16:15:32 -02:00
Luis Peñaranda 8a58557f40 removed old files 2013-11-19 16:08:29 -02:00
Luis Peñaranda cbdca2c35d Code refactoring.
The obsolete and unused code was removed. The interface was cleaned. The
memory leaks dissapeared (according to valgrind), because the pointers
to RS memory were removed.

For test purposes, the rational interface is not tested.
2013-11-19 16:07:24 -02:00
Laurent Rineau 21abdd09ed Merge remote-tracking branch 'origin/Algebraic_kernel_d-RS_remove_release_warnings'
- Remove warnings in include/CGAL/RS

Tested in CGAL-4.3-Ic-194
2013-10-09 14:49:45 +02:00
Luis Peñaranda 34485ce89d removed unused variables in release from rs calls 2013-10-04 15:32:04 -03:00
Luis Peñaranda d53c137525 removed unused variables in release from dyadic.h 2013-10-04 15:31:27 -03:00
Laurent Rineau d64828378d Merge remote-tracking branch 'origin/Algebraic_kernel_d-RS_remove_leading_underscores-penarand'
Approved by the Release Manager, for CGAL-4.3
Tested in CGAL-4.3-Ic-188.
2013-10-03 17:05:48 +02:00
Luis Peñaranda 5c74f47533 bugfix in polynomial converter 2013-09-24 17:36:42 -03:00
Luis Peñaranda f4ddb0eeb5 removed leading _ from polynomial interface 2013-09-19 16:55:54 -03:00
Luis Peñaranda 1f91465c32 removed leading _ from polynomial converter 2013-09-19 16:22:55 -03:00
Luis Peñaranda 7481e18eae remove leading underscores from isolator interface 2013-09-19 16:15:23 -03:00
Luis Peñaranda 44117e0ae2 removed leading underscores from memory interface 2013-09-19 16:08:40 -03:00
Luis Peñaranda 615fdb7905 remove leading underscores from class algebraic_1 2013-09-19 16:00:19 -03:00
Luis Peñaranda 81434d69fc corrected typo 2013-09-19 15:43:28 -03:00
Luis Peñaranda 9f45c20123 changed c-style to c++-style comments 2013-09-19 15:37:59 -03:00
Luis Peñaranda f92dc1c904 removed leading underscores from template names 2013-09-19 13:30:45 -03:00
Andreas Fabri 6c547e5663 Mainly added includes 2013-09-13 22:24:30 +02:00
Andreas Fabri 0cbc8b0e40 remove unused parameters 2013-03-23 08:45:06 +01:00
Laurent Rineau 5668111b3d Do not use 'offsetof' on non-POD
That fixes the following commit:

  | commit ae3602cb5d
  | Author: Andreas Fabri <andreas.fabri@geometryfactory.com>
  | Date:   Thu Feb 14 12:09:18 2013 +0100
  |
  |     Don't use BOOST_MULTI_INDEX_MEMBER
  |
2013-02-20 16:44:02 +01:00
Andreas Fabri ae3602cb5d Don't use BOOST_MULTI_INDEX_MEMBER 2013-02-14 12:09:18 +01:00
Andreas Fabri 64787d9b73 use bool instead of int 2013-02-12 19:16:01 +01:00
Laurent Rineau d19578725b Fix warnings 2013-02-07 18:15:23 +01:00
Sébastien Loriot 82b2ebc865 apply the cpp0x namespace renaming in all files 2012-12-19 11:33:17 +01:00
Philipp Möller 1adf441b18 Convert all CRLF files to LF 2012-12-03 18:44:24 +01:00
Luis Peñaranda fc95783370 fix bug in refinement with very small precisions 2012-09-25 14:33:19 +00:00
Luis Peñaranda 98ea5fbe8f removed useless pointers from algebraic numbers 2012-08-24 14:14:19 +00:00
Luis Peñaranda 760211da15 allocate space for endpoints before refinement, in some cases 2012-08-23 18:16:41 +00:00
Luis Peñaranda a97e6329a0 improved algebraic number comparison 2012-08-23 18:16:37 +00:00
Laurent Rineau db194534c7 First big patch to fix -Wunused-local-typedefs
-Wunused-local-typedefs is a new warning flag of gcc-4.7, and it will enabled
 by -Wall since gcc-4.8 (not yet released).

The fix is a big set of removals of unused typedefs (or comments, or moves,
depending on the context).
2012-08-01 13:29:16 +00:00
Luis Peñaranda faedebaba5 added flag to use ugcd 2012-07-19 15:46:15 +00:00
Luis Peñaranda 7b2ddd3188 avoided some link errors in gcd implementation 2012-07-18 19:20:54 +00:00
Eric Berberich f87bbe2479 cleanup code as indicated by compiler warnings 2012-07-08 10:47:58 +00:00
Eric Berberich 029e99d1cc remove compiler warnings 2012-07-06 07:06:28 +00:00
Eric Berberich 0a8afa0474 wrong variable name 2012-07-06 07:05:27 +00:00
Eric Berberich 230919c8d6 remove compiler warnings in tests 2012-07-05 09:50:20 +00:00
Eric Berberich 3c3372bf60 fixes if RS3 is not available 2012-03-29 13:44:24 +00:00
Eric Berberich af10650852 make functions inline in order to work with multiple compile objects
avoids linking error "duplicate symbols"
2012-03-20 13:09:04 +00:00
Michael Hemmer c153408f14 remove warnings 2012-01-18 11:56:04 +00:00
Sébastien Loriot 91a5327fa8 change LGPLv2 -> LGPLv3 2011-10-10 13:48:25 +00:00
Sébastien Loriot 7ec484eac7 merge next into feature branch 2011-09-09 06:44:09 +00:00
Guillaume Damiand a29c905ee0 Replace BOOST_STATIC_ASSERT by CGAL_static_assertion. 2011-08-31 14:30:07 +00:00
Laurent Rineau 1e3c229440 merge from next 2011-08-26 13:55:12 +00:00
Michael Hemmer 6b48ebf374 fixing issues with VC9 2011-08-22 14:13:00 +00:00
Efi Fogel a8508a99e7 Pacify MSVC 2011-08-22 13:48:04 +00:00
Sébastien Loriot f727cacadb remove warning 2011-06-08 06:51:17 +00:00
Philipp Möller 8eb30ef805 Replaced all uses of predecessor/successor with prev/next. 2011-06-07 16:21:58 +00:00
Sébastien Loriot 4846101f51 merge from next 2011-05-23 16:35:56 +00:00
Sébastien Loriot 99b35e7228 remove extra ; 2011-05-19 06:23:13 +00:00
Sébastien Loriot 506aebdfd5 use forward declaration of Sqrt_extension (detected by a bug in Algebraic_kernel_d test-suite). 2011-05-02 09:45:02 +00:00
Luis Peñaranda 425d9a51de added _1 suffix to some confusing filenames 2011-04-18 09:26:41 +00:00
Luis Peñaranda 021dba06ed separated isolator from the rest of the algebraic kernel 2011-04-14 14:18:31 +00:00
Luis Peñaranda 55e074e55f added RS-based univariate isolator 2011-04-13 13:05:45 +00:00