Commit Graph

899 Commits

Author SHA1 Message Date
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
Luis Peñaranda eb0479fe76 use the converter to convert int to rat poly 2013-12-05 01:08:41 -03:00
Sébastien Loriot 0fa2cacb60 remove doc_tex documentation (including developer manual) and old manual tools 2013-12-03 17:27:02 +01: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 25718cf66b avoid some warnings with -Wunused-local-typedefs
also added the ability to log test time
2013-11-26 00:54:00 -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 ed04ff7c18 avoid more -Wall warnings in g++ 4.7 2013-11-23 01:12:25 -02:00
Luis Peñaranda dd5a60d1af avoid one more warning 2013-11-23 00:23:44 -02:00
Luis Peñaranda 7f47236d30 avoided some warnings with -Wunused-local-typedefs 2013-11-22 01:44:43 -02:00
Luis Peñaranda cc43bc6310 remove dont_submit file 2013-11-21 00:03:04 -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 1d81d04fb4 fixed test program, which made testsuite fail 2013-11-20 12:05:13 -02:00
Luis Peñaranda b9a3922f0f Revert "uncommented a test which did not pass in the past"
This reverts commit 3f08a80977.
2013-11-20 12:04:54 -02:00
Luis Peñaranda 8d62e0d56f minor doc fix in Algebraic_kernel_d reference 2013-11-19 20:41:27 -02:00
Luis Peñaranda 3f08a80977 uncommented a test which did not pass in the past 2013-11-19 18:10:54 -02:00
Luis Peñaranda dfa7218c85 added missing file 2013-11-19 16:15:32 -02:00
Luis Peñaranda fa7e46cf13 updated main test and removed other obsolete tests 2013-11-19 16:11:59 -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 38e5dc102d Remove execution permissions 2013-11-13 14:05:43 +01:00
Laurent Rineau 75067bd072 Fix several I/O issues with Apple-clang-3.2 and its libc++ 2013-10-11 16:12:02 +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
Laurent Rineau 1213dfbc0b Merge remote-tracking branch 'origin/Algebraic_kernel_d-split_tests-GF'
- Split several test files of Polynomial, Algebraic_kernel_d, and
  Number_types into multiple test files, to avoid heap overflows of VC++.

Tested in CGAL-4.3-Ic-194
2013-10-09 14:29:02 +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 67a3824cec Change permissions of files created by Andreas 2013-10-04 16:57:11 +02: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
Andreas Fabri f37d2940b6 split one testcase as VC++ suffers from a combinatorial explosion 2013-09-25 15:04:35 +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
Michael Hemmer 11c8477dec fixed doxygen issue 2013-08-21 16:09:14 +02:00
Laurent Rineau bc03aaf30b Put doc/ in the global dont_submit file 2013-08-20 10:57:03 +02:00
Sébastien Loriot d282ade623 use \cgalCite instead of \cite
using perl -i -pe 's/\\cite\s*{?([a-zA-Z0-9:-]+)}?/\\cgalCite{$1}/g'
2013-08-05 18:25:26 +02:00
Sébastien Loriot 2dfe8a3d73 workaround for a doxygen bug: remove space after /!* to avoid a verbatim env
this happens if you have an empty line or the text directly after /!*
to find them in the generated documentation, grep for "pre class=\"fragment\""
(a few of them are legitimate however)
2013-07-25 14:58:53 +02:00
Sébastien Loriot d4d9bc212b replace in the doc \R by \mathbb{R}
\R is not a valid latex command
I used: sed -i 's/\\f$\s*\\R/\\f$ \\mathbb{R}/g'
2013-07-10 17:07:43 +02:00
Sébastien Loriot 716f87d2d7 rename Hidden_type to unspecified_type and update its description 2013-06-13 18:48:58 +02:00
Ross Hemsley 4d9caf3763 Added names that were missing into the Doxyfile.in entries.
Also modified Installation/CMakeLists.txt to push the version number variable to the parent level
so that it can be accessed by the documentation
2013-05-30 17:55:43 +02:00
Philipp Möller 4d469821f7 Generated Doxyfile.in and dependencies 2013-05-30 14:13:47 +02:00