Commit Graph

596 Commits

Author SHA1 Message Date
Sébastien Loriot 67b53faece Merge remote-tracking branch 'cgal/releases/CGAL-4.14-branch' 2020-04-29 14:06:37 +02:00
Alexander Kobel f4af887bd0 Make f square-free in Construct_curve_2 (fix #2224)
Documentation in Curve_analysis_2 suggests that this was intended
behavior, but not added.
2020-04-24 08:30:26 +02:00
Sébastien Loriot fdb17cb3f1 extra run of the script to remove tabs and trailing whitespaces 2020-03-26 19:26:10 +01:00
Sébastien Loriot 38789af55d Update branch from master after trailing whitespaces and tabs removal 2020-03-26 19:25:47 +01:00
Sébastien Loriot 0779373835 extra run of the script to remove tabs and trailing whitespaces
right after the  merge of 4.14 release branch

+ manual fix on one line in:
    * Arrangement_on_surface_2/include/CGAL/IO/Arr_text_formatter.h
    * .travis/generate_travis.sh
2020-03-26 14:16:06 +01:00
Sébastien Loriot 590612a563 run the script to remove tabs and trailing whitespaces 2020-03-26 13:25:16 +01:00
Mael Rouxel-Labbé f0e594efbc Fix uninitialized warning (?) 2020-02-10 18:18:01 +01:00
Sébastien Loriot 52164b1fba First pass on removing license notice in header for LGPL files 2019-10-19 15:40:30 +02:00
Sébastien Loriot 7356421d80 introduce Commercial license SPDX tag 2019-10-19 12:15:19 +02:00
Sébastien Loriot 9bd9c68b83 update LGPL[23]+ and GPL[23]+ SPDX tags
ack -l --no-svg "SPDX-License-Identifier: GPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-3.0+/SPDX-License-Identifier: GPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-3.0+/SPDX-License-Identifier: LGPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: GPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-2.0+/SPDX-License-Identifier: GPL-2.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-2.0+/SPDX-License-Identifier: LGPL-2.0-or-later/"
2019-10-18 21:57:54 +02:00
Sebastien Loriot 2a426bb1e1
Merge pull request #4063 from sloriot/CGAL-NO_CXX11
Remove CGAL_CXX11 macro usage
2019-07-19 16:16:22 +02:00
Sebastien Loriot e4adb62011
Merge pull request #4078 from maxGimeno/Fix_some_warnings-GF
Fix warnings
2019-07-18 16:35:51 +02:00
Sebastien Loriot 667e4022f7
Merge pull request #4060 from sloriot/CGAL-doc_match_brackets
match @{ and @}
2019-07-18 16:26:43 +02:00
Maxime Gimeno 64253458aa Fix warnings 2019-07-12 10:49:10 +02:00
Sébastien Loriot c0edb5ecaa remove CGAL_CXX11 macro usage 2019-07-08 11:42:17 +02:00
Sébastien Loriot 983645a51a match @{ and @} 2019-07-05 21:49:46 +02:00
Laurent Rineau dca6b5c19e Strange patch that fixes the remaining bugs
https://github.com/CGAL/cgal/pull/4013#issuecomment-507291311

Because of two constructions in Algebraic_curve_kernel_2 and
Hyperbolic_octagon_translation, the assertion "!blocks.empty()" from
`<CGAL/CORE/MemoryPool.h>` was triggered during the destruction of
thread-local objects.

This strange patch ensures that the order of creation of thread-local
object is right, so the order of destruction is right as well.
2019-07-02 10:53:09 +02:00
Mael Rouxel-Labbé 2848158354 Fix typos 2019-05-20 08:54:04 +02:00
Sébastien Loriot 124012d9f9 replace cpp11::array by std::array 2019-03-29 13:28:33 +01:00
Sébastien Loriot ce126b87c6 remove cpp11::copy_n, cpp11::prev, and cpp11::next and use std instead 2019-03-29 13:28:32 +01:00
Sébastien Loriot 82c13e6e74 remove cpp11 workaround in kernel related packages 2019-03-29 10:41:50 +01:00
Andreas Fabri 6853a9202d Fix Algebraic_kernel 2019-02-11 10:10:37 +01:00
Laurent Rineau 3ba6262fb5 Fix a warning [-Wmaybe-uninitialized] in Algebraic_kernel_d
```
[ 50%] Building CXX object CMakeFiles/Algebraic_kernel_d_2.dir/Algebraic_kernel_d_2.cpp.o
/usr/local/bin/c++  -DCGAL_TEST_SUITE=1 -DCGAL_USE_CORE=1 -DCGAL_USE_GMP -DCGAL_USE_GMPXX -DCGAL_USE_MPFI -DCGAL_USE_MPFR -I/home/cgal_tester/build/src/cmake/platforms/Ubuntu-latest-GCC6-Release/test/Algebraic_kernel_d/include -isystem /usr/include/x86_64-linux-gnu -I/home/cgal_tester/build/src/cmake/platforms/Ubuntu-latest-GCC6-Release/test/Algebraic_kernel_d -I/home/cgal_tester/build/src/cmake/platforms/Ubuntu-latest-GCC6-Release/include -I/mnt/testsuite/include  -DDONT_USE_BOOST_PROGRAM_OPTIONS -Wall -Wextra -O3 -DCGAL_NDEBUG -frounding-math   -Wall -frounding-math -o CMakeFiles/Algebraic_kernel_d_2.dir/Algebraic_kernel_d_2.cpp.o -c /home/cgal_tester/build/src/cmake/platforms/Ubuntu-latest-GCC6-Release/test/Algebraic_kernel_d/Algebraic_kernel_d_2.cpp
In file included from /mnt/testsuite/include/CGAL/Polynomial.h:44,
                 from /mnt/testsuite/include/CGAL/Algebraic_kernel_d_1.h:37,
                 from /mnt/testsuite/include/CGAL/Algebraic_kernel_d_2.h:31,
                 from /home/cgal_tester/build/src/cmake/platforms/Ubuntu-latest-GCC6-Release/test/Algebraic_kernel_d/Algebraic_kernel_d_2.cpp:25:
/mnt/testsuite/include/CGAL/Handle_with_policy.h: In member function 'void CGAL::Curve_pair_analysis_2<AlgebraicKernelWithAnalysis_2>::compute_event_x_coordinates_with_event_indices() const [with AlgebraicKernelWithAnalysis_2 = CGAL::Algebraic_curve_kernel_2<CGAL::Algebraic_kernel_d_1<CORE::BigInt, CORE::BigRat, CGAL::internal::Algebraic_real_rep<CORE::BigInt, CORE::BigRat>, CGAL::internal::Descartes<CGAL::Polynomial<CORE::BigInt>, CORE::BigRat> > >]':
/mnt/testsuite/include/CGAL/Handle_with_policy.h:1014:28: warning: '*((void*)&<anonymous> +8)' may be used uninitialized in this function [-Wmaybe-uninitialized]
 1014 |         Handle_policy::find( h);
      |         ~~~~~~~~~~~~~~~~~~~^~~~
/mnt/testsuite/include/CGAL/Handle_with_policy.h:1014:28: warning: '*((void*)&<anonymous> +8)' may be used uninitialized in this function [-Wmaybe-uninitialized]
 1014 |         Handle_policy::find( h);
      |         ~~~~~~~~~~~~~~~~~~~^~~~
/mnt/testsuite/include/CGAL/Handle_with_policy.h:1014:28: warning: '*((void*)&<anonymous> +8)' may be used uninitialized in this function [-Wmaybe-uninitialized]
 1014 |         Handle_policy::find( h);
      |         ~~~~~~~~~~~~~~~~~~~^~~~
```

The warning is because an uninitialized `optional` is copied (in a
`push_back()`). The fix is to use `emplace_back()` to construct it
directly in the vector, instead of copying it.
2019-02-08 10:33:04 +01:00
Andreas Fabri 873416e6da Fix Algebraic_kernel_d 2019-02-07 16:10:42 +01:00
Andreas Fabri 4ce4b6a89b Fix Algebraic_kernel_d 2019-01-31 14:12:22 +01:00
Andreas Fabri 5c4e0a3392 Fix Algebraic_kernel_d 2019-01-31 14:09:42 +01:00
Andreas Fabri 04eea7f742 Fix Algebraic_kernel_d 2019-01-31 13:57:09 +01:00
Andreas Fabri 8e4a74d3c4 Fix Algebraic_kernel_d 2019-01-31 13:55:37 +01:00
Andreas Fabri cc23699ea0 fix Arrangement_2 2019-01-28 09:14:59 +01:00
Andreas Fabri eaedab3c60 Fix Algebraic_kernel_d 2019-01-24 17:46:26 +01:00
Sébastien Loriot 76069002c8 fix initialization warning 2018-11-24 10:37:38 +01:00
Mael Rouxel-Labbé 26c857a431 Moved unary/binary_function to CGAL::cpp98 2018-06-13 15:58:19 +02:00
Mael Rouxel-Labbé 6283291c8a Moved CGAL::iterator to CGAL::cpp98 2018-06-13 15:58:19 +02:00
Andreas Fabri 654980580e class -> struct 2018-05-15 15:37:51 +02:00
Andreas Fabri 99bc374cce More forward declarations 2018-05-15 15:37:51 +02: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 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
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
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
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
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