Commit Graph

946 Commits

Author SHA1 Message Date
Andreas Fabri 99bc374cce More forward declarations 2018-05-15 15:37:51 +02:00
Andreas Fabri dfac81140d Use CGAL_USE_TYPE() 2018-03-23 10:02:07 +01:00
Andreas Fabri b48703bc13 Use CGAL_USE_TYPE 2018-03-21 08:23:08 +01:00
Andreas Fabri 579b737fa8 Do not swap the pair in the testsuite 2018-03-16 21:40:24 +01:00
Laurent Rineau a06d390fd4 Merge pull request #2910 from luis4a0/Algebraic_kernel_d-RS_MPFR_compatibility-Luis
Algebraic kernel d RS-Fix compatibility of MPFR, MPFI and RS.
2018-03-09 18:41:16 +01:00
Luis Peñaranda 6200edcfaf Forbid MPFR 3.1.[3456] when using RS. 2018-03-08 10:12:42 +01:00
Laurent Rineau 0a74393dcf Commit all new dependencies files 2018-03-06 18:44:48 +01:00
Laurent Rineau 85ce0157cf Merge pull request #2839 from afabri/STL_extension-replace_std_iterator-GF
STL_extension: Introduce CGAL::iterator
2018-02-23 17:34:57 +01:00
Laurent Rineau 78e7060525 Merge pull request #2712 from afabri/CGAL-VC+warnlevel_4-GF
Deal with VC++ warnings of level /W4
2018-02-19 14:27:06 +01:00
Andreas Fabri 52549b1145 STL_extension: Introduce CGAL::iterator as replacement for the deprecated std::iterator 2018-02-14 18:46:45 +00:00
Andreas Fabri df2e978158 Fix disable/enable warnings; Fix indentation 2018-02-13 14:02:40 +00:00
Sébastien Loriot 483f69728e Refresh branch 2018-02-12 22:21:38 +01:00
Maxime Gimeno 688b5dd06e Move dependencies creation to package_info and add dependencies to git 2018-02-02 12:08:05 +01:00
Maxime Gimeno 8bde832931 Fix METIS headers in BGL 2018-02-02 12:08:05 +01:00
Maxime Gimeno a676d5a60e Try to fix errors in classification checks 2018-02-02 12:08:05 +01:00
Maxime Gimeno acd0a72edf Modify travis script to test dependencies 2018-02-02 12:08:05 +01:00
Maxime Gimeno ae36b452bc Add dependencies of all packages 2018-02-02 12:08:05 +01:00
Andreas Fabri 05152f6f66 cast 2018-01-25 14:06:13 +00:00
Andreas Fabri 939da7ca04 fixes after the testsuite 2018-01-25 08:44:16 +00:00
Andreas Fabri 84d912dab6 fix initialization of Random 2018-01-24 13:46:47 +00:00
Andreas Fabri 63ddadf63f Address Issue #2764 2018-01-24 11:24:22 +00:00
Andreas Fabri 4c2b278f04 Algebraic_kernel_d 2018-01-24 10:26:27 +00:00
Simon Giraudot 6269309d86 Use CGAL include for boost counting/transform iterators everywhere 2018-01-23 11:09:52 +01:00
Andreas Fabri 18acb2ece9 Arrangements 2018-01-18 15:05:34 +00:00
Laurent Rineau 3c6640bf59 Merge pull request #1436 from lrineau/CGAL-new_cmake-GF
Renewal of CMake scripts: header-only, ctest, CMake>=3.1

# Conflicts:
#	Installation/config/testfiles/CGAL_CFG_NESTED_CLASS_FRIEND_DECLARATION_BUG.cpp
2017-12-05 18:20:05 +01:00
Laurent Rineau 21b9a2177d Do not use the CGAL-components syntax for GMP, MPFR, MPFI, and RS3 2017-11-23 17:06:46 +01:00
Sébastien Loriot 72cda50a5e fix incorrect LGPL version tags 2017-11-12 10:17:52 +01:00
Sébastien Loriot 0698f79aff add SPDX identifier for files under the LGPL-3+ license 2017-11-12 10:17:50 +01:00
Laurent Rineau 2b35bddfb2 Replace all std::binary_function by CGAL::binary_function 2017-10-04 16:36:32 +02:00
Laurent Rineau 7e9f756935 Replace all std::unary_function by CGAL::unary_function 2017-10-04 15:57:09 +02:00
Sébastien Loriot 1bba93acc7 explicit that the sign function is the one from CGAL to avoid ambiguity 2017-06-17 07:31:22 +02:00
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
Sébastien Loriot a89ccb10e7 remove non UTF-8 characters 2017-01-19 15:20:26 +01: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
Laurent Rineau b5d0ebc25c Merge pull request #1576 from afabri/Algebraic_kernel_d_use_use-GF
CGAL_USE_TYPE() to avoid warnings
2016-10-20 09:47:26 +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 b87b4a6031 Use Box_parameter_space_2 in the testprogram 2016-10-18 08:39:56 +02: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
Andreas Fabri 82d72949af what did I do 2016-10-13 10:36:17 +02:00
Andreas Fabri 21209d97b2 CGAL_USE_TYPE() to avoid warnings 2016-10-13 10:19:10 +02: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
Sébastien Loriot 7e2ee496de update project name of cmake scripts of tests 2016-09-08 00:26:37 +02:00
Sébastien Loriot 6b338eeb1f improve the name of projects in cmake scripts of examples 2016-09-08 00:02:55 +02: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
Philipp Möller 0a04a3a48f Use CGAL_DOC_VERSION 2016-02-11 15:37:54 +01:00
Sébastien Loriot 72863bfe44 fix doxygen warnings 2016-02-04 21:19:36 +01:00
Andreas Fabri 1b0f79c870 #ifdef cyclic.cpp 2016-01-29 14:21:28 +01:00
Andreas Fabri 87f67d99df Add a reduced program that illustrates the cyclic leak 2016-01-27 17:25:36 +01:00
Philipp Möller 71b4e9c515 Use CGAL_FULL_VERSION in all Doxyfile.in 2015-12-17 16:33:28 +01:00
Philipp Möller 81a8f982dc Handle the easy INPUT cases
If INPUT is just PKG/doc/PKG, handle it automatically.
2015-12-10 17:00:26 +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
Laurent Rineau f9917c487e CMake 2.8.11 2015-07-13 12:36:43 +02:00
Sébastien Loriot d164633493 remove REQUIRED keyword 2015-07-07 11:23:46 +02:00
Philipp Möller 236ae3f9d3 Remove two unused includes of pool_allocator 2015-04-10 14:48:33 +02:00
Sébastien Loriot b28b4607ae use UTF8 for letters with accent 2015-01-31 13:58:08 +01: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 36d8b5bd18 Convert source files encoding to utf-8
All non-ASCII files should be encoded in UTF-8. So far, the ZSH script
`Scripts/developer_scripts/detect_wrong_encoding` detects wrong encoding
in source/header files of include/, src/, and doc/.
2014-08-01 11:20:13 +02:00
Laurent Rineau a8ff620f3f Fix the remaining warnings on my platform
That was mostly "unused locally defined typedefs".
2014-04-01 14:50:51 +02:00
Laurent Rineau afc7b8f777 Fix warnings (unused local typedef) 2014-04-01 14:49:49 +02:00
Laurent Rineau 969b51a78c Fix a compilation error with VC9 2014-04-01 14:49:49 +02: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
Laurent Rineau 6330632723 Fix various warnings about unused variables/types 2014-01-10 13:25:23 +01:00
Laurent Rineau 972befcc01 Merge branch 'CGAL-fix_io_bad-lrineau'
Fix the uses of std::basic_ios::bad() across the whole CGAL code, and
use fail() instead.

Tested in CGAL-4.4-Ic-84.
2014-01-09 17:52:46 +01:00
Laurent Rineau 9e0a6ccca5 Merge branch 'Algebraic_kernel_d-RS_address_leaks-penarand'
Fix memory leaks in RS number types.

Tested in CGAL-4.4-Ic-79.
(+ a trivial fix a warning commited afterward)
Approved by the Release Manager.
2014-01-06 16:00:10 +01:00
Laurent Rineau 19ecf8e545 Trivial fix of a warning 2014-01-06 15:59:30 +01:00
Luis Peñaranda cad0a49f30 Revert "avoid more -Wall warnings in g++ 4.7"
This reverts commit ed04ff7c18. Basically,
I changed in the reverted commit the assert() by CGAL_assertion(), and
added some CGAL_assertion_code().
2014-01-03 10:53:46 -03:00
Laurent Rineau 55f8095430 Fix a typo in a link of the doc
1/ Use explicit linking instead of implicit one.
2/ Fix the typo:   AK_d_1::AlgebraicReal_1 -> AK_d_1::Algebraic_real_1
2014-01-03 11:49:30 +01:00
Luis Peñaranda 77da387fe5 Test correctly inexact coefficient types.
The algebraic structure tests are performed following the exactness of
the coefficient type (it was assumed before that the type was exact). If
it is inexact, the polynomial traits are not tested to avoid wrong
errors.
2014-01-01 11:40:24 -03:00
Luis Peñaranda 352b029aab fixed years-old bug in tests
The bug came from assuming that the bound type was exact. Now, the
algebraic structure of the bound type can be correctly tested.
2013-12-30 23:53:16 -03: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
Laurent Rineau 269ae1ca61 Fix the uses of std::basic_ios::bad(), and use fail() instead.
bad() implies fail() but std::basic_ios::operator! is actually equivalent
to std::basic_ios::fail(), not bad().

For example,
    std::ifstream is(argv[1]);
    if (is.bad()) {
is probably wrong because, in case the file does not exist, only the failbit it set,
and not the badbit.

Other example:
   double x;
   is >> x;
If the stream 'is' does not contains a string that can represent a double,
then failbit is set (and maybe the eofbit if the stream is actually too
short), but not the badbit.

bad() can be used, in case fail() returned true, to discriminate between a
I/O error and a logical error.

See:
  http://en.cppreference.com/w/cpp/io/basic_ios/operator_bool
  http://en.cppreference.com/w/cpp/io/ios_base/iostate
2013-12-12 16:13:40 +01: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