-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
STL extension: Add a template argument to Prevent_deref for the value type #7410
STL extension: Add a template argument to Prevent_deref for the value type #7410
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am made slight modifications about indentations, spaces, naming.
I am fine with the changes. That fixes the issue.
Note that I also suspect that it is responsible for the many time out in PMP. From what I remember, I did try a similar change and it has a dramatic impact on the runtime of Polyhedron (see also 2e0bc5e). |
(even if it's not strictly conforming to the C++ standard)
@sloriot I have removed the Tests failing label, because the corresponding tests were three months ago, and the pull-request has changed since then. |
I suspect this PR to be responsible for Shape detection runtime errors in CGAL-6.0-Ic-114. |
The address sanitizer found stack-use-after-scope errors: https://cgal.geometryfactory.com/CGAL/testsuite/CGAL-6.0-Ic-114/Shape_detection/TestReport_lrineau_Fedora-Release.gz |
This PR has both labels "Tests failing" and "Ready to be tested"....(?) |
Now the second parameter is the `reference` type and no longer the `value_type`.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After latests commits, I tested a lot locally, on Fedora Linux 40, with optimizers and assertions:
> ctest --test-dir build/RelWithDebInfo -j12 -L 'Arr|Triangulation_[23]|SMDS|STL|Mesh_[23]|TDS_[23]|Shape' -j12
Internal ctest changing into directory: /home/lrineau/Git/cgal-master/build/RelWithDebInfo
Test project /home/lrineau/Git/cgal-master/build/RelWithDebInfo
Start 2: check build system
[...]
100% tests passed, 0 tests failed out of 1105
Label Time Summary:
Arrangement_on_surface_2_Demo = 418.14 sec*proc (1 test)
Arrangement_on_surface_2_Examples = 2098.81 sec*proc (130 tests)
Arrangement_on_surface_2_Tests = 1725.35 sec*proc (347 tests)
Arrangement_on_surface_2_earth_Demo = 66.69 sec*proc (1 test)
CGAL_build_system = 20.59 sec*proc (2 tests)
Installation = 20.59 sec*proc (2 tests)
Mesh_2_Demo = 46.22 sec*proc (2 tests)
Mesh_2_Examples = 207.70 sec*proc (14 tests)
Mesh_2_Tests = 281.50 sec*proc (28 tests)
Mesh_3_Examples = 2732.15 sec*proc (70 tests)
Mesh_3_Tests = 2595.52 sec*proc (60 tests)
SMDS_3_Examples = 51.89 sec*proc (6 tests)
SMDS_3_Tests = 274.94 sec*proc (16 tests)
STL_Extension_Examples = 32.31 sec*proc (14 tests)
STL_Extension_Tests = 221.11 sec*proc (72 tests)
Shape_detection_Examples = 410.24 sec*proc (28 tests)
Shape_detection_Tests = 856.47 sec*proc (46 tests)
Shape_regularization_Examples = 83.29 sec*proc (12 tests)
Shape_regularization_Tests = 502.73 sec*proc (46 tests)
TDS_2_Tests = 17.89 sec*proc (4 tests)
TDS_3_Examples = 15.77 sec*proc (6 tests)
TDS_3_Tests = 26.06 sec*proc (6 tests)
Triangulation_2_Demo = 131.43 sec*proc (3 tests)
Triangulation_2_Examples = 621.42 sec*proc (54 tests)
Triangulation_2_Tests = 687.99 sec*proc (50 tests)
Triangulation_3_Demo = 100.61 sec*proc (1 test)
Triangulation_3_Examples = 543.42 sec*proc (42 tests)
Triangulation_3_Tests = 746.26 sec*proc (44 tests)
Total Test time (real) = 1679.44 sec
Looks good, at least on my Linux machine.
``` 100% tests passed, 0 tests failed out of 17 Label Time Summary: CGAL_build_system = 0.78 sec*proc (1 test) Installation = 0.78 sec*proc (1 test) Triangulation_on_sphere_2_Tests = 102.51 sec*proc (16 tests) ```
Successfully tested in 6.0-Ic-251 |
## Summary of Changes Important various fixes and improvements, from an experimental branch of mine about CDT_3. - <s>remove CMake warnings about `VTK_USE_FILE`</s> (our testsuite tests with [VTK-8.2](https://docs.vtk.org/en/latest/release_details/8.2.html), whereas [VTK-9.0](https://docs.vtk.org/en/latest/release_details/9.0.html) was released four years ago). - make `Circulator_from_container` compatible with ranges (instead of just containers) - `Hash_map` is move-constructible and -assignable - add preliminary support for C++20 concepts and `<format>` - [x] add `Compare_angle_3(Point_3, Point_3, Point_3, Point_3, Point_3, Point_3)` (with six points) **TODO: needs doc**... will be handled later in issue #8219 - [x] **breaking changes:** add `Compare_xy_2` to `TriangulationTraits_2` <s>TODO: needs announcement</s> - fix `Compact_container` time stamp feature - [x] commits from #7410 **That is probably a problem, to be fixed.** **fixed in #7410 and then my the merge https://github.com/CGAL/cgal/pull/8170/commits/70464ea107dcf9e32a338ed5c307897f1cb1fcf8** - add `CGAL::Scope_exit`, `CGAL::make_scope_exit`, for CGAL developers (undocumented) - add an overload of `make_sorted_pair` with only one pair-like argument - improve `CGAL::IO::Output_ref` and `oformat` - perf improvements in `TDS_3/include/CGAL/Triangulation_data_structure_3.h` (`is_edge` is 7 times faster) - <s>perf improvement in `Triangulation_2/include/CGAL/Triangulation_2/internal/Polyline_constraint_hierarchy_2.h` (with the use of `unordered_flat_map` from Boost>=1.80</s> - less filter failures in `Triangulation_segment_cell_iterator_3` - add `Triangulation_3::is_facet(u, v, w)` (without `, c, i, j, k`) ## Release Management * Affected package(s): Installation, T_2, TDS_2, T_3, TDS_3, SMDS_3, Kernel, STL_Extension, Stream_support * Feature/Small Feature (if any): * License and copyright ownership: maintenance by GeometryFactory
Summary of Changes
Fix issue #7400
Release Management
Affected package(s): Triangulation_2, Triangulation_3, STL_extension
Issue(s) solved (if any): fix bug: the value_type of the range returned by Triangulation_3.finite_vertex_handles() is not Vertex_handle #7400
License and copyright ownership: unchanged