cgal icon indicating copy to clipboard operation
cgal copied to clipboard

CDT_3: fix v2

Open lrineau opened this issue 2 months ago • 6 comments

Summary of Changes

Followup to #9089. For the moment, this one is based on main.

Release Management

  • Affected package(s): CDT_3, STL_Extension
  • Link to compiled documentation (obligatory for small feature) wrong link name to be changed
  • License and copyright ownership:

lrineau avatar Nov 05 '25 11:11 lrineau

clang: error: unknown argument: '-fexperimental-library' in CGAL-6.2-Ic-35

afabri avatar Nov 06 '25 08:11 afabri

VC2017 has a problem in the testsuite CGAL-6.2-Ic-40 with #include <version> which is C++20. link

afabri avatar Nov 13 '25 07:11 afabri

clang on apple reports an error concerning finite_facets_end(). Is this a missing using statement in the derived class? Why only this compiler?

afabri avatar Nov 13 '25 07:11 afabri

There is also a warning suggesting adding braces.

afabri avatar Nov 13 '25 07:11 afabri

The gdb stuff, can you confirm that this does not make our algorithms and data structures read or write anything in files or streams. And that it does not require anything special in user written makefiles.

afabri avatar Nov 13 '25 10:11 afabri

The gdb stuff, can you confirm that this does not make our algorithms and data structures read or write anything in files or streams. And that it does not require anything special in user written makefiles.

auto-loaded CGAL gdb pretty-printers

The feature is implemented in CGAL/gdb_autoload.h, that is included by <CGAL/config.h> conditionally:

https://github.com/CGAL/cgal/blob/c6be43819657657dd3c96c32bbcd0bf27fbc0638/Installation/include/CGAL/config.h#L138-L140

The file CGAL/gdb_autoload.h does not do anything but with Linux (or BSD) and "gcc or clang".

In gdb, the auto-loading will display that message:

[lrineau@fernand]~/Git/cgal% gdb --quiet -n "/home/lrineau/Git/cgal/build/GCC ccache/Debug/test/Kernel_23/test_gdb_pretty_printers"
Reading symbols from /home/lrineau/Git/cgal/build/GCC ccache/Debug/test/Kernel_23/test_gdb_pretty_printers...
warning: File "/home/lrineau/Git/cgal/build/GCC ccache/Debug/test/Kernel_23/test_gdb_pretty_printers" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
To enable execution of this file add
        add-auto-load-safe-path /home/lrineau/Git/cgal/build/GCC ccache/Debug/test/Kernel_23/test_gdb_pretty_printers
line to your configuration file "/home/lrineau/.gdbinit".
To completely disable this security protection add
        set auto-load safe-path /
line to your configuration file "/home/lrineau/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
        info "(gdb)Auto-loading safe path"

In my $HOME/.gdbinit file, I have added:

set auto-load safe-path /home/lrineau/Git/cgal

Once the auto-load path is set up, then gdb displays:

[lrineau@fernand]~/Git/cgal% gdb --quiet "/home/lrineau/Git/cgal/build/GCC ccache/Debug/test/Kernel_23/test_gdb_pretty_printers"
No symbol table is loaded.  Use the "file" command.
Make breakpoint pending on future shared library load? (y or [n]) [answered N; input not from terminal]
Reading symbols from /home/lrineau/Git/cgal/build/GCC ccache/Debug/test/Kernel_23/test_gdb_pretty_printers...
CGAL pretty printers auto-loaded from /home/lrineau/Git/cgal/Installation/share/gdb/auto-load/cgal_printers.py
(gdb) 

In particular the message

CGAL pretty printers auto-loaded from /home/lrineau/Git/cgal/Installation/share/gdb/auto-load/cgal_printers.py

allows to know where is the pretty-printer file, and edit it.

lrineau avatar Nov 13 '25 16:11 lrineau