make  all-recursive
make[1]: Entering directory '/home/me/TMP/giac-1.9.0'
Making all in micropython-1.12
make[2]: Entering directory '/home/me/TMP/giac-1.9.0/micropython-1.12'
Making all in xcas
make[3]: Entering directory '/home/me/TMP/giac-1.9.0/micropython-1.12/xcas'
Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.
../py/mkrules.mk:176: warning: overriding recipe for target 'libmicropython.a'
../py/mkrules.mk:145: warning: ignoring old recipe for target 'libmicropython.a'
mkdir -p build/genhdr
GEN build/genhdr/mpversion.h
GEN build/genhdr/moduledefs.h
GEN build/genhdr/qstr.i.last
GEN build/genhdr/qstr.split
GEN build/genhdr/qstrdefs.collected.h
QSTR updated
GEN build/genhdr/qstrdefs.generated.h
mkdir -p build/extmod/
mkdir -p build/lib/embed/
mkdir -p build/lib/utils/
mkdir -p build/py/
mkdir -p build/ulab/
mkdir -p build/ulab/numpy/
mkdir -p build/ulab/numpy/fft/
mkdir -p build/ulab/numpy/linalg/
mkdir -p build/ulab/numpy/ndarray/
mkdir -p build/ulab/scipy/
mkdir -p build/ulab/scipy/linalg/
mkdir -p build/ulab/scipy/optimize/
mkdir -p build/ulab/scipy/signal/
mkdir -p build/ulab/scipy/special/
mkdir -p build/ulab/user/
mkdir -p build/ulab/utils/
CC ../py/mpstate.c
CC ../py/nlr.c
CC ../py/nlrx86.c
CC ../py/nlrx64.c
CC ../py/nlrthumb.c
CC ../py/nlrpowerpc.c
CC ../py/nlrxtensa.c
CC ../py/nlrsetjmp.c
CC ../py/malloc.c
CC ../py/gc.c
CC ../py/pystack.c
CC ../py/qstr.c
CC ../py/vstr.c
CC ../py/mpprint.c
CC ../py/unicode.c
CC ../py/mpz.c
CC ../py/reader.c
CC ../py/lexer.c
CC ../py/parse.c
CC ../py/scope.c
CC ../py/compile.c
CC ../py/emitcommon.c
CC ../py/emitbc.c
CC ../py/asmbase.c
CC ../py/asmx64.c
CC ../py/emitnx64.c
CC ../py/asmx86.c
CC ../py/emitnx86.c
CC ../py/asmthumb.c
CC ../py/emitnthumb.c
CC ../py/emitinlinethumb.c
CC ../py/asmarm.c
CC ../py/emitnarm.c
CC ../py/asmxtensa.c
CC ../py/emitnxtensa.c
CC ../py/emitinlinextensa.c
CC ../py/emitnxtensawin.c
CC ../py/formatfloat.c
CC ../py/parsenumbase.c
CC ../py/parsenum.c
CC ../py/emitglue.c
CC ../py/persistentcode.c
CC ../py/runtime.c
CC ../py/runtime_utils.c
CC ../py/scheduler.c
CC ../py/nativeglue.c
CC ../py/ringbuf.c
CC ../py/stackctrl.c
CC ../py/argcheck.c
CC ../py/warning.c
CC ../py/profile.c
CC ../py/map.c
CC ../py/obj.c
CC ../py/objarray.c
CC ../py/objattrtuple.c
CC ../py/objbool.c
CC ../py/objboundmeth.c
CC ../py/objcell.c
CC ../py/objclosure.c
CC ../py/objcomplex.c
CC ../py/objdeque.c
CC ../py/objdict.c
CC ../py/objenumerate.c
CC ../py/objexcept.c
CC ../py/objfilter.c
CC ../py/objfloat.c
CC ../py/objfun.c
CC ../py/objgenerator.c
CC ../py/objgetitemiter.c
CC ../py/objint.c
CC ../py/objint_longlong.c
CC ../py/objint_mpz.c
CC ../py/objlist.c
CC ../py/objmap.c
CC ../py/objmodule.c
CC ../py/objobject.c
CC ../py/objpolyiter.c
CC ../py/objproperty.c
CC ../py/objnone.c
CC ../py/objnamedtuple.c
CC ../py/objrange.c
CC ../py/objreversed.c
CC ../py/objset.c
CC ../py/objsingleton.c
CC ../py/objslice.c
CC ../py/objstr.c
CC ../py/objstrunicode.c
CC ../py/objstringio.c
CC ../py/objtuple.c
CC ../py/objtype.c
CC ../py/objzip.c
CC ../py/opmethods.c
CC ../py/sequence.c
CC ../py/stream.c
CC ../py/binary.c
CC ../py/builtinimport.c
CC ../py/builtinevex.c
CC ../py/builtinhelp.c
CC ../py/modarray.c
CC ../py/modbuiltins.c
CC ../py/modcollections.c
CC ../py/modgc.c
CC ../py/modio.c
CC ../py/modmath.c
CC ../py/modcmath.c
CC ../py/modmicropython.c
CC ../py/modstruct.c
CC ../py/modsys.c
CC ../py/moduerrno.c
CC ../py/modthread.c
CC ../py/vm.c
CC ../py/bc.c
CC ../py/showbc.c
CC ../py/repl.c
CC ../py/smallint.c
CC ../py/frozenmod.c
CC ../extmod/moductypes.c
CC ../extmod/modujson.c
CC ../extmod/modure.c
CC ../extmod/moduzlib.c
CC ../extmod/moduheapq.c
CC ../extmod/modutimeq.c
CC ../extmod/moduhashlib.c
CC ../extmod/moducryptolib.c
CC ../extmod/modubinascii.c
CC ../extmod/virtpin.c
CC ../extmod/machine_mem.c
CC ../extmod/machine_pinbase.c
CC ../extmod/machine_signal.c
CC ../extmod/machine_pulse.c
CC ../extmod/machine_i2c.c
CC ../extmod/machine_spi.c
CC ../extmod/modbluetooth.c
CC ../extmod/modussl_axtls.c
CC ../extmod/modussl_mbedtls.c
CC ../extmod/modurandom.c
CC ../extmod/moduselect.c
CC ../extmod/moduwebsocket.c
CC ../extmod/modwebrepl.c
CC ../extmod/modframebuf.c
CC ../extmod/vfs.c
CC ../extmod/vfs_blockdev.c
CC ../extmod/vfs_reader.c
CC ../extmod/vfs_posix.c
CC ../extmod/vfs_posix_file.c
CC ../extmod/vfs_fat.c
CC ../extmod/vfs_fat_diskio.c
CC ../extmod/vfs_fat_file.c
CC ../extmod/vfs_lfs.c
CC ../extmod/utime_mphal.c
CC ../extmod/uos_dupterm.c
CC ../lib/embed/abort_.c
CC ../lib/utils/printf.c
CC input.c
CC main.c
main.c: In function ‘main_’:
main.c:585:15: warning: unused variable ‘NOTHING_EXECUTED’ [-Wunused-variable]
  585 |     const int NOTHING_EXECUTED = -2;
      |               ^~~~~~~~~~~~~~~~
main.c: At top level:
main.c:484:13: warning: ‘set_sys_argv’ defined but not used [-Wunused-function]
  484 | STATIC void set_sys_argv(char *argv[], int argc, int start_arg) {
      |             ^~~~~~~~~~~~
CC modos.c
CC gccollect.c
CC modtime.c
CC unix_mphal.c
CC icas.c
CC file.c
CC graphic.c
CC nop.c
CC ulab/scipy/linalg/linalg.c
CC ulab/scipy/optimize/optimize.c
CC ulab/scipy/signal/signal.c
CC ulab/scipy/special/special.c
CC ulab/ndarray_operators.c
CC ulab/ulab_tools.c
CC ulab/ndarray.c
CC ulab/numpy/ndarray/ndarray_iter.c
CC ulab/ndarray_properties.c
CC ulab/numpy/approx.c
CC ulab/numpy/compare.c
CC ulab/ulab_create.c
CC ulab/numpy/fft/fft.c
CC ulab/numpy/fft/fft_tools.c
CC ulab/numpy/filter.c
CC ulab/numpy/linalg/linalg.c
CC ulab/numpy/linalg/linalg_tools.c
CC ulab/numpy/numerical.c
CC ulab/numpy/poly.c
CC ulab/numpy/stats.c
CC ulab/numpy/transform.c
CC ulab/numpy/vector.c
CC ulab/numpy/numpy.c
CC ulab/scipy/scipy.c
CC ulab/user/user.c
CC ulab/utils/utils.c
CC ulab/ulab.c
ar rcs libmicropython.a build/py/mpstate.o build/py/nlr.o build/py/nlrx86.o build/py/nlrx64.o build/py/nlrthumb.o build/py/nlrpowerpc.o build/py/nlrxtensa.o build/py/nlrsetjmp.o build/py/malloc.o build/py/gc.o build/py/pystack.o build/py/qstr.o build/py/vstr.o build/py/mpprint.o build/py/unicode.o build/py/mpz.o build/py/reader.o build/py/lexer.o build/py/parse.o build/py/scope.o build/py/compile.o build/py/emitcommon.o build/py/emitbc.o build/py/asmbase.o build/py/asmx64.o build/py/emitnx64.o build/py/asmx86.o build/py/emitnx86.o build/py/asmthumb.o build/py/emitnthumb.o build/py/emitinlinethumb.o build/py/asmarm.o build/py/emitnarm.o build/py/asmxtensa.o build/py/emitnxtensa.o build/py/emitinlinextensa.o build/py/emitnxtensawin.o build/py/formatfloat.o build/py/parsenumbase.o build/py/parsenum.o build/py/emitglue.o build/py/persistentcode.o build/py/runtime.o build/py/runtime_utils.o build/py/scheduler.o build/py/nativeglue.o build/py/ringbuf.o build/py/stackctrl.o build/py/argcheck.o build/py/warning.o build/py/profile.o build/py/map.o build/py/obj.o build/py/objarray.o build/py/objattrtuple.o build/py/objbool.o build/py/objboundmeth.o build/py/objcell.o build/py/objclosure.o build/py/objcomplex.o build/py/objdeque.o build/py/objdict.o build/py/objenumerate.o build/py/objexcept.o build/py/objfilter.o build/py/objfloat.o build/py/objfun.o build/py/objgenerator.o build/py/objgetitemiter.o build/py/objint.o build/py/objint_longlong.o build/py/objint_mpz.o build/py/objlist.o build/py/objmap.o build/py/objmodule.o build/py/objobject.o build/py/objpolyiter.o build/py/objproperty.o build/py/objnone.o build/py/objnamedtuple.o build/py/objrange.o build/py/objreversed.o build/py/objset.o build/py/objsingleton.o build/py/objslice.o build/py/objstr.o build/py/objstrunicode.o build/py/objstringio.o build/py/objtuple.o build/py/objtype.o build/py/objzip.o build/py/opmethods.o build/py/sequence.o build/py/stream.o build/py/binary.o build/py/builtinimport.o build/py/builtinevex.o build/py/builtinhelp.o build/py/modarray.o build/py/modbuiltins.o build/py/modcollections.o build/py/modgc.o build/py/modio.o build/py/modmath.o build/py/modcmath.o build/py/modmicropython.o build/py/modstruct.o build/py/modsys.o build/py/moduerrno.o build/py/modthread.o build/py/vm.o build/py/bc.o build/py/showbc.o build/py/repl.o build/py/smallint.o build/py/frozenmod.o build/extmod/moductypes.o build/extmod/modujson.o build/extmod/modure.o build/extmod/moduzlib.o build/extmod/moduheapq.o build/extmod/modutimeq.o build/extmod/moduhashlib.o build/extmod/moducryptolib.o build/extmod/modubinascii.o build/extmod/virtpin.o build/extmod/machine_mem.o build/extmod/machine_pinbase.o build/extmod/machine_signal.o build/extmod/machine_pulse.o build/extmod/machine_i2c.o build/extmod/machine_spi.o build/extmod/modbluetooth.o build/extmod/modussl_axtls.o build/extmod/modussl_mbedtls.o build/extmod/modurandom.o build/extmod/moduselect.o build/extmod/moduwebsocket.o build/extmod/modwebrepl.o build/extmod/modframebuf.o build/extmod/vfs.o build/extmod/vfs_blockdev.o build/extmod/vfs_reader.o build/extmod/vfs_posix.o build/extmod/vfs_posix_file.o build/extmod/vfs_fat.o build/extmod/vfs_fat_diskio.o build/extmod/vfs_fat_file.o build/extmod/vfs_lfs.o build/extmod/utime_mphal.o build/extmod/uos_dupterm.o build/lib/embed/abort_.o build/lib/utils/printf.o build/./input.o build/./main.o build/./modos.o build/./gccollect.o build/./modtime.o build/./unix_mphal.o build/./icas.o build/./file.o build/./graphic.o build/./nop.o build/ulab/scipy/linalg/linalg.o build/ulab/scipy/optimize/optimize.o build/ulab/scipy/signal/signal.o build/ulab/scipy/special/special.o build/ulab/ndarray_operators.o build/ulab/ulab_tools.o build/ulab/ndarray.o build/ulab/numpy/ndarray/ndarray_iter.o build/ulab/ndarray_properties.o build/ulab/numpy/approx.o build/ulab/numpy/compare.o build/ulab/ulab_create.o build/ulab/numpy/fft/fft.o build/ulab/numpy/fft/fft_tools.o build/ulab/numpy/filter.o build/ulab/numpy/linalg/linalg.o build/ulab/numpy/linalg/linalg_tools.o build/ulab/numpy/numerical.o build/ulab/numpy/poly.o build/ulab/numpy/stats.o build/ulab/numpy/transform.o build/ulab/numpy/vector.o build/ulab/numpy/numpy.o build/ulab/scipy/scipy.o build/ulab/user/user.o build/ulab/utils/utils.o build/ulab/ulab.o
ln -sf ../ulab .
rm -f libmicropython.a
ar cru libmicropython.a build/py/mpstate.o build/py/nlr.o build/py/nlrx86.o build/py/nlrx64.o build/py/nlrthumb.o build/py/nlrpowerpc.o build/py/nlrxtensa.o build/py/nlrsetjmp.o build/py/malloc.o build/py/gc.o build/py/pystack.o build/py/qstr.o build/py/vstr.o build/py/mpprint.o build/py/unicode.o build/py/mpz.o build/py/reader.o build/py/lexer.o build/py/parse.o build/py/scope.o build/py/compile.o build/py/emitcommon.o build/py/emitbc.o build/py/asmbase.o build/py/asmx64.o build/py/emitnx64.o build/py/asmx86.o build/py/emitnx86.o build/py/asmthumb.o build/py/emitnthumb.o build/py/emitinlinethumb.o build/py/asmarm.o build/py/emitnarm.o build/py/asmxtensa.o build/py/emitnxtensa.o build/py/emitinlinextensa.o build/py/emitnxtensawin.o build/py/formatfloat.o build/py/parsenumbase.o build/py/parsenum.o build/py/emitglue.o build/py/persistentcode.o build/py/runtime.o build/py/runtime_utils.o build/py/scheduler.o build/py/nativeglue.o build/py/ringbuf.o build/py/stackctrl.o build/py/argcheck.o build/py/warning.o build/py/profile.o build/py/map.o build/py/obj.o build/py/objarray.o build/py/objattrtuple.o build/py/objbool.o build/py/objboundmeth.o build/py/objcell.o build/py/objclosure.o build/py/objcomplex.o build/py/objdeque.o build/py/objdict.o build/py/objenumerate.o build/py/objexcept.o build/py/objfilter.o build/py/objfloat.o build/py/objfun.o build/py/objgenerator.o build/py/objgetitemiter.o build/py/objint.o build/py/objint_longlong.o build/py/objint_mpz.o build/py/objlist.o build/py/objmap.o build/py/objmodule.o build/py/objobject.o build/py/objpolyiter.o build/py/objproperty.o build/py/objnone.o build/py/objnamedtuple.o build/py/objrange.o build/py/objreversed.o build/py/objset.o build/py/objsingleton.o build/py/objslice.o build/py/objstr.o build/py/objstrunicode.o build/py/objstringio.o build/py/objtuple.o build/py/objtype.o build/py/objzip.o build/py/opmethods.o build/py/sequence.o build/py/stream.o build/py/binary.o build/py/builtinimport.o build/py/builtinevex.o build/py/builtinhelp.o build/py/modarray.o build/py/modbuiltins.o build/py/modcollections.o build/py/modgc.o build/py/modio.o build/py/modmath.o build/py/modcmath.o build/py/modmicropython.o build/py/modstruct.o build/py/modsys.o build/py/moduerrno.o build/py/modthread.o build/py/vm.o build/py/bc.o build/py/showbc.o build/py/repl.o build/py/smallint.o build/py/frozenmod.o build/extmod/moductypes.o build/extmod/modujson.o build/extmod/modure.o build/extmod/moduzlib.o build/extmod/moduheapq.o build/extmod/modutimeq.o build/extmod/moduhashlib.o build/extmod/moducryptolib.o build/extmod/modubinascii.o build/extmod/virtpin.o build/extmod/machine_mem.o build/extmod/machine_pinbase.o build/extmod/machine_signal.o build/extmod/machine_pulse.o build/extmod/machine_i2c.o build/extmod/machine_spi.o build/extmod/modbluetooth.o build/extmod/modussl_axtls.o build/extmod/modussl_mbedtls.o build/extmod/modurandom.o build/extmod/moduselect.o build/extmod/moduwebsocket.o build/extmod/modwebrepl.o build/extmod/modframebuf.o build/extmod/vfs.o build/extmod/vfs_blockdev.o build/extmod/vfs_reader.o build/extmod/vfs_posix.o build/extmod/vfs_posix_file.o build/extmod/vfs_fat.o build/extmod/vfs_fat_diskio.o build/extmod/vfs_fat_file.o build/extmod/vfs_lfs.o build/extmod/utime_mphal.o build/extmod/uos_dupterm.o build/lib/embed/abort_.o build/lib/utils/printf.o build/./unix_mphal.o build/./modos.o build/./gccollect.o  build/./input.o build/./file.o build/./graphic.o build/./main.o build/./nop.o build/modtime.o build/ulab/*.o build/ulab/numpy/*.o build/ulab/numpy/fft/*.o build/ulab/numpy/linalg/*.o build/ulab/numpy/ndarray/*.o build/ulab/scipy/*.o build/ulab/scipy/linalg/*.o build/ulab/scipy/optimize/*.o build/ulab/scipy/signal/*.o build/ulab/scipy/special/*.o build/ulab/user/*.o build/ulab/utils/*.o
ar: `u' modifier ignored since `D' is the default (see `U')
/bin/cp libmicropython.a ../..
make[3]: Leaving directory '/home/me/TMP/giac-1.9.0/micropython-1.12/xcas'
make[3]: Entering directory '/home/me/TMP/giac-1.9.0/micropython-1.12'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/home/me/TMP/giac-1.9.0/micropython-1.12'
make[2]: Leaving directory '/home/me/TMP/giac-1.9.0/micropython-1.12'
Making all in src
make[2]: Entering directory '/home/me/TMP/giac-1.9.0/src'
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT input_lexer.lo -MD -MP -MF .deps/input_lexer.Tpo -c -o input_lexer.lo input_lexer.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT input_lexer.lo -MD -MP -MF .deps/input_lexer.Tpo -c input_lexer.cc  -fPIC -DPIC -o .libs/input_lexer.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from input_lexer.ll:53:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
input_lexer.cc: In function ‘int giac_yylex(giac::gen*, yyscan_t)’:
input_lexer.cc:1895:32: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1895 |         register yy_state_type yy_current_state;
      |                                ^~~~~~~~~~~~~~~~
input_lexer.cc:1896:24: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1896 |         register char *yy_cp, *yy_bp;
      |                        ^~~~~
input_lexer.cc:1896:32: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1896 |         register char *yy_cp, *yy_bp;
      |                                ^~~~~
input_lexer.cc:1897:22: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1897 |         register int yy_act;
      |                      ^~~~~~
input_lexer.cc:1949:42: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1949 |                         register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
      |                                          ^~~~
input_lexer.cc: In function ‘int yy_get_next_buffer(yyscan_t)’:
input_lexer.cc:4451:24: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4451 |         register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
      |                        ^~~~
input_lexer.cc:4452:24: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4452 |         register char *source = yyg->yytext_ptr;
      |                        ^~~~~~
input_lexer.cc:4453:22: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4453 |         register int number_to_move, i;
      |                      ^~~~~~~~~~~~~~
input_lexer.cc:4453:38: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4453 |         register int number_to_move, i;
      |                                      ^
input_lexer.cc: In function ‘yy_state_type yy_get_previous_state(yyscan_t)’:
input_lexer.cc:4585:32: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4585 |         register yy_state_type yy_current_state;
      |                                ^~~~~~~~~~~~~~~~
input_lexer.cc:4586:24: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4586 |         register char *yy_cp;
      |                        ^~~~~
input_lexer.cc:4593:34: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4593 |                 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
      |                                  ^~~~
input_lexer.cc: In function ‘yy_state_type yy_try_NUL_trans(yy_state_type, yyscan_t)’:
input_lexer.cc:4618:22: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4618 |         register int yy_is_jam;
      |                      ^~~~~~~~~
input_lexer.cc:4620:24: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4620 |         register char *yy_cp = yyg->yy_c_buf_p;
      |                        ^~~~~
input_lexer.cc:4622:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4622 |         register YY_CHAR yy_c = 1;
      |                          ^~~~
input_lexer.cc: At global scope:
input_lexer.cc:4640:49: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4640 |     static void yyunput (int c, register char * yy_bp , yyscan_t yyscanner)
      |                                                 ^~~~~
input_lexer.cc: In function ‘void yyunput(int, char*, yyscan_t)’:
input_lexer.cc:4642:24: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4642 |         register char *yy_cp;
      |                        ^~~~~
input_lexer.cc:4653:30: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4653 |                 register int number_to_move = yyg->yy_n_chars + 2;
      |                              ^~~~~~~~~~~~~~
input_lexer.cc:4654:32: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4654 |                 register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
      |                                ^~~~
input_lexer.cc:4656:32: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4656 |                 register char *source =
      |                                ^~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT input_lexer.lo -MD -MP -MF .deps/input_lexer.Tpo -c input_lexer.cc -o input_lexer.o >/dev/null 2>&1
mv -f .deps/input_lexer.Tpo .deps/input_lexer.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT sym2poly.lo -MD -MP -MF .deps/sym2poly.Tpo -c -o sym2poly.lo sym2poly.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT sym2poly.lo -MD -MP -MF .deps/sym2poly.Tpo -c sym2poly.cc  -fPIC -DPIC -o .libs/sym2poly.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from sym2poly.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const giac::monomial<T>&) [with T = giac::gen]’:
sym2poly.cc:407:30:   required from here
poly.h:52:193: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   52 |     tensor(const monomial<T> & v) : dim(int(v.index.size())), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
sym2poly.cc:476:20:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const T&, int) [with T = giac::gen]’:
sym2poly.cc:486:36:   required from here
poly.h:55:172: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   55 |     tensor(const T & v, int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
sym2poly.cc:953:20:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int, const std::vector<giac::monomial<T> >&) [with T = giac::gen]’:
poly.h:147:14:   required from ‘giac::tensor<T> giac::tensor<T>::trunc1() const [with T = giac::gen]’
sym2poly.cc:944:36:   required from here
poly.h:59:205: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   59 |     tensor(int d,const std::vector< monomial<T> > & c) : dim(d), coord(c), is_strictly_greater(i_lex_is_strictly_greater),m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT sym2poly.lo -MD -MP -MF .deps/sym2poly.Tpo -c sym2poly.cc -o sym2poly.o >/dev/null 2>&1
mv -f .deps/sym2poly.Tpo .deps/sym2poly.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT gausspol.lo -MD -MP -MF .deps/gausspol.Tpo -c -o gausspol.lo gausspol.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT gausspol.lo -MD -MP -MF .deps/gausspol.Tpo -c gausspol.cc  -fPIC -DPIC -o .libs/gausspol.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from gausspol.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
gausspol.cc: At global scope:
gausspol.cc:858:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  858 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_strictly_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const T&, int) [with T = giac::gen]’:
gausspol.cc:188:26:   required from here
poly.h:55:172: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   55 |     tensor(const T & v, int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const giac::monomial<T>&) [with T = giac::gen]’:
gausspol.cc:266:14:   required from here
poly.h:52:193: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   52 |     tensor(const monomial<T> & v) : dim(int(v.index.size())), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
gausspol.cc:1097:16:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
gausspol.cc:1097:33:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
monomial.h: In instantiation of ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>) [with T = gen; typename std::vector<monomial<T> >::const_iterator = std::vector<monomial<gen>, std::allocator<monomial<gen> > >::const_iterator]’:
gausspol.cc:1625:15:   required from here
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
threaded.h: In instantiation of ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int) [with T = int; U = unsigned int; R = int]’:
gausspol.cc:1919:36:   required from here
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
threaded.h: In instantiation of ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int) [with T = long long int; U = unsigned int; R = int]’:
gausspol.cc:1958:54:   required from here
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
threaded.h: In instantiation of ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int) [with T = __int128; U = unsigned int; R = int]’:
gausspol.cc:1977:112:   required from here
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
threaded.h: In instantiation of ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int) [with T = __gmp_expr<__mpz_struct [1], __mpz_struct [1]>; U = unsigned int; R = int]’:
gausspol.cc:1999:51:   required from here
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
threaded.h: In instantiation of ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int) [with T = int; U = long long unsigned int; R = int]’:
gausspol.cc:2036:37:   required from here
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
threaded.h: In instantiation of ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int) [with T = long long int; U = long long unsigned int; R = int]’:
gausspol.cc:2057:55:   required from here
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
threaded.h: In instantiation of ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int) [with T = __int128; U = long long unsigned int; R = int]’:
gausspol.cc:2076:113:   required from here
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
threaded.h: In instantiation of ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int) [with T = __gmp_expr<__mpz_struct [1], __mpz_struct [1]>; U = long long unsigned int; R = int]’:
gausspol.cc:2098:52:   required from here
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int, const std::vector<giac::monomial<T> >&) [with T = giac::gen]’:
gausspol.cc:3908:27:   required from here
poly.h:59:205: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   59 |     tensor(int d,const std::vector< monomial<T> > & c) : dim(d), coord(c), is_strictly_greater(i_lex_is_strictly_greater),m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘void giac::lexsort(std::vector<monomial<T> >&) [with T = gen]’:
poly.h:623:12:   required from ‘giac::tensor<T> giac::tensor<T>::operator()(const T&) const [with T = giac::gen]’
gausspol.cc:4658:25:   required from here
poly.h:522:82: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  522 |     sort_helper<T> M(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>));
      |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT gausspol.lo -MD -MP -MF .deps/gausspol.Tpo -c gausspol.cc -o gausspol.o >/dev/null 2>&1
mv -f .deps/gausspol.Tpo .deps/gausspol.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT threaded.lo -MD -MP -MF .deps/threaded.Tpo -c -o threaded.lo threaded.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT threaded.lo -MD -MP -MF .deps/threaded.Tpo -c threaded.cc  -fPIC -DPIC -o .libs/threaded.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from threaded.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
threaded.cc: In function ‘bool giac::horner(const std::vector<T_unsigned<int, long long unsigned int> >&, int, const std::vector<long long unsigned int>&, std::vector<T_unsigned<int, long long unsigned int> >&, int, int)’:
threaded.cc:774:24: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  774 |           register int g=smod(it->g,modulo);
      |                        ^
threaded.cc:780:22: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  780 |         register int nterms = (ucur-uend)/var2;
      |                      ^~~~~~
threaded.cc:783:24: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  783 |           register int g=smod(it->g,modulo);
      |                        ^
threaded.cc:792:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  792 |               register int g=smod(it->g,modulo);
      |                            ^
threaded.cc: In function ‘int giac::hornermod(const std::vector<int>&, int, int, bool)’:
threaded.cc:1625:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1625 |     register int tmp=res+res;
      |                  ^~~
threaded.cc: In function ‘bool giac::horner(const std::vector<T_unsigned<std::vector<int>, long long unsigned int> >&, int, const std::vector<long long unsigned int>&, std::vector<T_unsigned<std::vector<int>, long long unsigned int> >&, int, int)’:
threaded.cc:5108:22: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 5108 |         register int nterms = (ucur-uend)/var2;
      |                      ^~~~~~
threaded.h: In instantiation of ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int) [with T = int; U = long long unsigned int; R = int]’:
threaded.cc:2832:16:   required from here
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
threaded.h: In instantiation of ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int) [with T = gen; U = long long unsigned int; R = int]’:
threaded.cc:3771:18:   required from here
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
threaded.cc:4433:33:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
threaded.h: In instantiation of ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int) [with T = dbgprint_vector<gen>; U = long long unsigned int; R = Modred]’:
threaded.cc:4930:34:   required from here
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
threaded.h: In instantiation of ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int) [with T = std::vector<int>; U = long long unsigned int; R = modred]’:
threaded.cc:5563:16:   required from here
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT threaded.lo -MD -MP -MF .deps/threaded.Tpo -c threaded.cc -o threaded.o >/dev/null 2>&1
mv -f .deps/threaded.Tpo .deps/threaded.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT moyal.lo -MD -MP -MF .deps/moyal.Tpo -c -o moyal.lo moyal.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT moyal.lo -MD -MP -MF .deps/moyal.Tpo -c moyal.cc  -fPIC -DPIC -o .libs/moyal.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from moyal.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT moyal.lo -MD -MP -MF .deps/moyal.Tpo -c moyal.cc -o moyal.o >/dev/null 2>&1
mv -f .deps/moyal.Tpo .deps/moyal.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT maple.lo -MD -MP -MF .deps/maple.Tpo -c -o maple.lo maple.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT maple.lo -MD -MP -MF .deps/maple.Tpo -c maple.cc  -fPIC -DPIC -o .libs/maple.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from maple.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
maple.cc:2926:14:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const T&, int) [with T = giac::gen]’:
maple.cc:3023:35:   required from here
poly.h:55:172: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   55 |     tensor(const T & v, int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
poly.h:883:14:   required from ‘giac::tensor<T> giac::Tnextcoeff(typename std::vector<monomial<T> >::const_iterator&, const typename std::vector<monomial<T> >::const_iterator&) [with T = gen; typename std::vector<monomial<T> >::const_iterator = std::vector<monomial<gen>, std::allocator<monomial<gen> > >::const_iterator]’
maple.cc:3183:29:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int, const std::vector<giac::monomial<T> >&) [with T = giac::gen]’:
poly.h:132:14:   required from ‘giac::tensor<T> giac::tensor<T>::untrunc1(int) const [with T = giac::gen]’
maple.cc:3183:56:   required from here
poly.h:59:205: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   59 |     tensor(int d,const std::vector< monomial<T> > & c) : dim(d), coord(c), is_strictly_greater(i_lex_is_strictly_greater),m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT maple.lo -MD -MP -MF .deps/maple.Tpo -c maple.cc -o maple.o >/dev/null 2>&1
mv -f .deps/maple.Tpo .deps/maple.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT ti89.lo -MD -MP -MF .deps/ti89.Tpo -c -o ti89.lo ti89.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT ti89.lo -MD -MP -MF .deps/ti89.Tpo -c ti89.cc  -fPIC -DPIC -o .libs/ti89.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from ti89.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
ti89.cc:573:21:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT ti89.lo -MD -MP -MF .deps/ti89.Tpo -c ti89.cc -o ti89.o >/dev/null 2>&1
mv -f .deps/ti89.Tpo .deps/ti89.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT mathml.lo -MD -MP -MF .deps/mathml.Tpo -c -o mathml.lo mathml.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT mathml.lo -MD -MP -MF .deps/mathml.Tpo -c mathml.cc  -fPIC -DPIC -o .libs/mathml.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from mathml.cc:3:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT mathml.lo -MD -MP -MF .deps/mathml.Tpo -c mathml.cc -o mathml.o >/dev/null 2>&1
mv -f .deps/mathml.Tpo .deps/mathml.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT misc.lo -MD -MP -MF .deps/misc.Tpo -c -o misc.lo misc.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT misc.lo -MD -MP -MF .deps/misc.Tpo -c misc.cc  -fPIC -DPIC -o .libs/misc.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from misc.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
misc.cc: In function ‘giac::gen giac::giac_bitand(const gen&, const gen&)’:
misc.cc:6030:23: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 6030 |     register unsigned t=(a.type<< _DECALAGE) | b.type;
      |                       ^
misc.cc:6033:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 6033 |     register ref_mpz_t * e;
      |                          ^
misc.cc: In function ‘giac::gen giac::giac_bitor(const gen&, const gen&)’:
misc.cc:6053:23: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 6053 |     register unsigned t=(a.type<< _DECALAGE) | b.type;
      |                       ^
misc.cc:6056:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 6056 |     register ref_mpz_t * e;
      |                          ^
misc.cc: In function ‘giac::gen giac::giac_bitxor(const gen&, const gen&)’:
misc.cc:6076:23: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 6076 |     register unsigned t=(a.type<< _DECALAGE) | b.type;
      |                       ^
misc.cc:6079:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 6079 |     register ref_mpz_t * e;
      |                          ^
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const T&, int) [with T = giac::gen]’:
misc.cc:2979:36:   required from here
poly.h:55:172: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   55 |     tensor(const T & v, int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT misc.lo -MD -MP -MF .deps/misc.Tpo -c misc.cc -o misc.o >/dev/null 2>&1
mv -f .deps/misc.Tpo .deps/misc.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT permu.lo -MD -MP -MF .deps/permu.Tpo -c -o permu.lo permu.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT permu.lo -MD -MP -MF .deps/permu.Tpo -c permu.cc  -fPIC -DPIC -o .libs/permu.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from permu.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT permu.lo -MD -MP -MF .deps/permu.Tpo -c permu.cc -o permu.o >/dev/null 2>&1
mv -f .deps/permu.Tpo .deps/permu.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT quater.lo -MD -MP -MF .deps/quater.Tpo -c -o quater.lo quater.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT quater.lo -MD -MP -MF .deps/quater.Tpo -c quater.cc  -fPIC -DPIC -o .libs/quater.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from quater.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
quater.cc:583:13:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
quater.cc:1923:23:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const giac::monomial<T>&) [with T = giac::gen]’:
quater.cc:2046:11:   required from here
poly.h:52:193: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   52 |     tensor(const monomial<T> & v) : dim(int(v.index.size())), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const T&, int) [with T = giac::gen]’:
poly.h:1564:15:   required from ‘void giac::Tcontentgcd(const tensor<T>&, const tensor<T>&, tensor<T>&, tensor<T>&, int) [with T = gen]’
poly.h:1692:16:   required from ‘giac::tensor<T> giac::Tgcdpsr(const tensor<T>&, const tensor<T>&, int) [with T = gen]’
quater.cc:1941:16:   required from here
poly.h:55:172: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   55 |     tensor(const T & v, int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int, const std::vector<giac::monomial<T> >&) [with T = giac::gen]’:
poly.h:147:14:   required from ‘giac::tensor<T> giac::tensor<T>::trunc1() const [with T = giac::gen]’
poly.h:1569:23:   required from ‘void giac::Tcontentgcd(const tensor<T>&, const tensor<T>&, tensor<T>&, tensor<T>&, int) [with T = gen]’
poly.h:1692:16:   required from ‘giac::tensor<T> giac::Tgcdpsr(const tensor<T>&, const tensor<T>&, int) [with T = gen]’
quater.cc:1941:16:   required from here
poly.h:59:205: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   59 |     tensor(int d,const std::vector< monomial<T> > & c) : dim(d), coord(c), is_strictly_greater(i_lex_is_strictly_greater),m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT quater.lo -MD -MP -MF .deps/quater.Tpo -c quater.cc -o quater.o >/dev/null 2>&1
mv -f .deps/quater.Tpo .deps/quater.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT desolve.lo -MD -MP -MF .deps/desolve.Tpo -c -o desolve.lo desolve.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT desolve.lo -MD -MP -MF .deps/desolve.Tpo -c desolve.cc  -fPIC -DPIC -o .libs/desolve.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from desolve.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int, const std::vector<giac::monomial<T> >&) [with T = giac::gen]’:
desolve.cc:196:60:   required from here
poly.h:59:205: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   59 |     tensor(int d,const std::vector< monomial<T> > & c) : dim(d), coord(c), is_strictly_greater(i_lex_is_strictly_greater),m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
desolve.cc:208:29:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const T&, int) [with T = giac::gen]’:
desolve.cc:282:22:   required from here
poly.h:55:172: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   55 |     tensor(const T & v, int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
desolve.cc:1760:16:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT desolve.lo -MD -MP -MF .deps/desolve.Tpo -c desolve.cc -o desolve.o >/dev/null 2>&1
mv -f .deps/desolve.Tpo .deps/desolve.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT input_parser.lo -MD -MP -MF .deps/input_parser.Tpo -c -o input_parser.lo input_parser.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT input_parser.lo -MD -MP -MF .deps/input_parser.Tpo -c input_parser.cc  -fPIC -DPIC -o .libs/input_parser.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from input_parser.yy:34:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const giac::monomial<T>&) [with T = giac::gen]’:
input_parser.yy:107:22:   required from here
poly.h:52:193: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   52 |     tensor(const monomial<T> & v) : dim(int(v.index.size())), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT input_parser.lo -MD -MP -MF .deps/input_parser.Tpo -c input_parser.cc -o input_parser.o >/dev/null 2>&1
mv -f .deps/input_parser.Tpo .deps/input_parser.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT symbolic.lo -MD -MP -MF .deps/symbolic.Tpo -c -o symbolic.lo symbolic.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT symbolic.lo -MD -MP -MF .deps/symbolic.Tpo -c symbolic.cc  -fPIC -DPIC -o .libs/symbolic.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from symbolic.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT symbolic.lo -MD -MP -MF .deps/symbolic.Tpo -c symbolic.cc -o symbolic.o >/dev/null 2>&1
mv -f .deps/symbolic.Tpo .deps/symbolic.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT index.lo -MD -MP -MF .deps/index.Tpo -c -o index.lo index.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT index.lo -MD -MP -MF .deps/index.Tpo -c index.cc  -fPIC -DPIC -o .libs/index.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from index.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT index.lo -MD -MP -MF .deps/index.Tpo -c index.cc -o index.o >/dev/null 2>&1
mv -f .deps/index.Tpo .deps/index.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT modpoly.lo -MD -MP -MF .deps/modpoly.Tpo -c -o modpoly.lo modpoly.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT modpoly.lo -MD -MP -MF .deps/modpoly.Tpo -c modpoly.cc  -fPIC -DPIC -o .libs/modpoly.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from modpoly.cc:3:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
modpoly.cc:342:24:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int, const std::vector<giac::monomial<T> >&) [with T = giac::gen]’:
modpoly.cc:354:24:   required from here
poly.h:59:205: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   59 |     tensor(int d,const std::vector< monomial<T> > & c) : dim(d), coord(c), is_strictly_greater(i_lex_is_strictly_greater),m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
modpoly.cc:7331:14:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const T&, int) [with T = giac::gen]’:
modpoly.cc:7735:37:   required from here
poly.h:55:172: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   55 |     tensor(const T & v, int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT modpoly.lo -MD -MP -MF .deps/modpoly.Tpo -c modpoly.cc -o modpoly.o >/dev/null 2>&1
mv -f .deps/modpoly.Tpo .deps/modpoly.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT modfactor.lo -MD -MP -MF .deps/modfactor.Tpo -c -o modfactor.lo modfactor.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT modfactor.lo -MD -MP -MF .deps/modfactor.Tpo -c modfactor.cc  -fPIC -DPIC -o .libs/modfactor.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from modfactor.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const T&, int) [with T = giac::gen]’:
modfactor.cc:1036:30:   required from here
poly.h:55:172: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   55 |     tensor(const T & v, int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
modfactor.cc:1044:18:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
modfactor.cc:1044:20:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT modfactor.lo -MD -MP -MF .deps/modfactor.Tpo -c modfactor.cc -o modfactor.o >/dev/null 2>&1
mv -f .deps/modfactor.Tpo .deps/modfactor.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT ezgcd.lo -MD -MP -MF .deps/ezgcd.Tpo -c -o ezgcd.lo ezgcd.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT ezgcd.lo -MD -MP -MF .deps/ezgcd.Tpo -c ezgcd.cc  -fPIC -DPIC -o .libs/ezgcd.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from ezgcd.cc:3:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
ezgcd.cc:66:25:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const giac::monomial<T>&) [with T = giac::gen]’:
ezgcd.cc:84:44:   required from here
poly.h:52:193: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   52 |     tensor(const monomial<T> & v) : dim(int(v.index.size())), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
ezgcd.cc:183:19:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int, const std::vector<giac::monomial<T> >&) [with T = giac::gen]’:
poly.h:147:14:   required from ‘giac::tensor<T> giac::tensor<T>::trunc1() const [with T = giac::gen]’
ezgcd.cc:92:26:   required from here
poly.h:59:205: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   59 |     tensor(int d,const std::vector< monomial<T> > & c) : dim(d), coord(c), is_strictly_greater(i_lex_is_strictly_greater),m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const T&, int) [with T = giac::gen]’:
poly.h:1472:14:   required from ‘giac::tensor<T> giac::Tlgcd(const tensor<T>&) [with T = gen]’
ezgcd.cc:471:19:   required from here
poly.h:55:172: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   55 |     tensor(const T & v, int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT ezgcd.lo -MD -MP -MF .deps/ezgcd.Tpo -c ezgcd.cc -o ezgcd.o >/dev/null 2>&1
mv -f .deps/ezgcd.Tpo .deps/ezgcd.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT derive.lo -MD -MP -MF .deps/derive.Tpo -c -o derive.lo derive.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT derive.lo -MD -MP -MF .deps/derive.Tpo -c derive.cc  -fPIC -DPIC -o .libs/derive.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from derive.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT derive.lo -MD -MP -MF .deps/derive.Tpo -c derive.cc -o derive.o >/dev/null 2>&1
mv -f .deps/derive.Tpo .deps/derive.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT solve.lo -MD -MP -MF .deps/solve.Tpo -c -o solve.lo solve.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT solve.lo -MD -MP -MF .deps/solve.Tpo -c solve.cc  -fPIC -DPIC -o .libs/solve.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from solve.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
solve.cc: In function ‘void giac::change_monomial_order(polynome&, const gen&)’:
solve.cc:7340:43: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
 7340 |       p.m_is_strictly_greater=std::ptr_fun(m_lex_is_strictly_greater<gen>);
      |                               ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
solve.cc:7344:43: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
 7344 |       p.m_is_strictly_greater=std::ptr_fun(m_total_revlex_is_strictly_greater<gen>);
      |                               ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
solve.cc:7348:43: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
 7348 |       p.m_is_strictly_greater=std::ptr_fun(m_total_lex_is_strictly_greater<gen>);
      |                               ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
solve.cc:7352:43: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
 7352 |       p.m_is_strictly_greater=std::ptr_fun(m_3var_is_strictly_greater<gen>);
      |                               ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
solve.cc:7356:43: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
 7356 |       p.m_is_strictly_greater=std::ptr_fun(m_7var_is_strictly_greater<gen>);
      |                               ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
solve.cc:7360:43: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
 7360 |       p.m_is_strictly_greater=std::ptr_fun(m_11var_is_strictly_greater<gen>);
      |                               ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
solve.cc:7364:43: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
 7364 |       p.m_is_strictly_greater=std::ptr_fun(m_16var_is_strictly_greater<gen>);
      |                               ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
solve.cc:7368:43: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
 7368 |       p.m_is_strictly_greater=std::ptr_fun(m_32var_is_strictly_greater<gen>);
      |                               ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
solve.cc:7372:43: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
 7372 |       p.m_is_strictly_greater=std::ptr_fun(m_64var_is_strictly_greater<gen>);
      |                               ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
solve.cc:5748:51:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int, const std::vector<giac::monomial<T> >&) [with T = giac::gen]’:
solve.cc:7494:81:   required from here
poly.h:59:205: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   59 |     tensor(int d,const std::vector< monomial<T> > & c) : dim(d), coord(c), is_strictly_greater(i_lex_is_strictly_greater),m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
/usr/include/c++/12.2.1/bits/stl_construct.h:119:7:   required from ‘void std::_Construct(_Tp*, _Args&& ...) [with _Tp = giac::tensor<giac::gen>; _Args = {}]’
/usr/include/c++/12.2.1/bits/stl_uninitialized.h:638:18:   required from ‘static _ForwardIterator std::__uninitialized_default_n_1<_TrivialValueType>::__uninit_default_n(_ForwardIterator, _Size) [with _ForwardIterator = giac::tensor<giac::gen>*; _Size = long unsigned int; bool _TrivialValueType = false]’
/usr/include/c++/12.2.1/bits/stl_uninitialized.h:701:20:   required from ‘_ForwardIterator std::__uninitialized_default_n(_ForwardIterator, _Size) [with _ForwardIterator = giac::tensor<giac::gen>*; _Size = long unsigned int]’
/usr/include/c++/12.2.1/bits/stl_uninitialized.h:766:44:   required from ‘_ForwardIterator std::__uninitialized_default_n_a(_ForwardIterator, _Size, allocator<_Tp>&) [with _ForwardIterator = giac::tensor<giac::gen>*; _Size = long unsigned int; _Tp = giac::tensor<giac::gen>]’
/usr/include/c++/12.2.1/bits/vector.tcc:642:35:   required from ‘void std::vector<_Tp, _Alloc>::_M_default_append(size_type) [with _Tp = giac::tensor<giac::gen>; _Alloc = std::allocator<giac::tensor<giac::gen> >; size_type = long unsigned int]’
/usr/include/c++/12.2.1/bits/stl_vector.h:1011:4:   required from ‘void std::vector<_Tp, _Alloc>::resize(size_type) [with _Tp = giac::tensor<giac::gen>; _Alloc = std::allocator<giac::tensor<giac::gen> >; size_type = long unsigned int]’
solve.cc:5017:18:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT solve.lo -MD -MP -MF .deps/solve.Tpo -c solve.cc -o solve.o >/dev/null 2>&1
mv -f .deps/solve.Tpo .deps/solve.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT intg.lo -MD -MP -MF .deps/intg.Tpo -c -o intg.lo intg.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT intg.lo -MD -MP -MF .deps/intg.Tpo -c intg.cc  -fPIC -DPIC -o .libs/intg.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from intg.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
intg.cc:491:14:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
intg.cc:1555:19:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const T&, int) [with T = giac::gen]’:
intg.cc:1559:27:   required from here
poly.h:55:172: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   55 |     tensor(const T & v, int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const giac::monomial<T>&) [with T = giac::gen]’:
intg.cc:5323:41:   required from here
poly.h:52:193: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   52 |     tensor(const monomial<T> & v) : dim(int(v.index.size())), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int, const std::vector<giac::monomial<T> >&) [with T = giac::gen]’:
poly.h:147:14:   required from ‘giac::tensor<T> giac::tensor<T>::trunc1() const [with T = giac::gen]’
intg.cc:1632:33:   required from here
poly.h:59:205: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   59 |     tensor(int d,const std::vector< monomial<T> > & c) : dim(d), coord(c), is_strictly_greater(i_lex_is_strictly_greater),m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT intg.lo -MD -MP -MF .deps/intg.Tpo -c intg.cc -o intg.o >/dev/null 2>&1
mv -f .deps/intg.Tpo .deps/intg.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT intgab.lo -MD -MP -MF .deps/intgab.Tpo -c -o intgab.lo intgab.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT intgab.lo -MD -MP -MF .deps/intgab.Tpo -c intgab.cc  -fPIC -DPIC -o .libs/intgab.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from intgab.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
intgab.cc:407:40:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const T&, int) [with T = giac::gen]’:
intgab.cc:411:27:   required from here
poly.h:55:172: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   55 |     tensor(const T & v, int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
intgab.cc:459:16:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const giac::monomial<T>&) [with T = giac::gen]’:
intgab.cc:1566:84:   required from here
poly.h:52:193: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   52 |     tensor(const monomial<T> & v) : dim(int(v.index.size())), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int, const std::vector<giac::monomial<T> >&) [with T = giac::gen]’:
poly.h:132:14:   required from ‘giac::tensor<T> giac::tensor<T>::untrunc1(int) const [with T = giac::gen]’
poly.h:971:6:   required from ‘bool giac::tensor<T>::TDivRem1(const giac::tensor<T>&, giac::tensor<T>&, giac::tensor<T>&, bool, int) const [with T = giac::gen]’
poly.h:1810:17:   required from ‘void giac::Tegcdpsr(const tensor<T>&, const tensor<T>&, tensor<T>&, tensor<T>&, tensor<T>&) [with T = gen]’
poly.h:1989:13:   required from ‘void giac::Tabcuv(const tensor<T>&, const tensor<T>&, const tensor<T>&, tensor<T>&, tensor<T>&, tensor<T>&) [with T = gen]’
intgab.cc:481:8:   required from here
poly.h:59:205: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   59 |     tensor(int d,const std::vector< monomial<T> > & c) : dim(d), coord(c), is_strictly_greater(i_lex_is_strictly_greater),m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT intgab.lo -MD -MP -MF .deps/intgab.Tpo -c intgab.cc -o intgab.o >/dev/null 2>&1
mv -f .deps/intgab.Tpo .deps/intgab.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT risch.lo -MD -MP -MF .deps/risch.Tpo -c -o risch.lo risch.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT risch.lo -MD -MP -MF .deps/risch.Tpo -c risch.cc  -fPIC -DPIC -o .libs/risch.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from risch.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const giac::monomial<T>&) [with T = giac::gen]’:
risch.cc:94:50:   required from here
poly.h:52:193: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   52 |     tensor(const monomial<T> & v) : dim(int(v.index.size())), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
risch.cc:125:52:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
risch.cc:258:16:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const T&, int) [with T = giac::gen]’:
risch.cc:494:41:   required from here
poly.h:55:172: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   55 |     tensor(const T & v, int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int, const std::vector<giac::monomial<T> >&) [with T = giac::gen]’:
poly.h:132:14:   required from ‘giac::tensor<T> giac::tensor<T>::untrunc1(int) const [with T = giac::gen]’
risch.cc:113:19:   required from here
poly.h:59:205: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   59 |     tensor(int d,const std::vector< monomial<T> > & c) : dim(d), coord(c), is_strictly_greater(i_lex_is_strictly_greater),m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT risch.lo -MD -MP -MF .deps/risch.Tpo -c risch.cc -o risch.o >/dev/null 2>&1
mv -f .deps/risch.Tpo .deps/risch.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT lin.lo -MD -MP -MF .deps/lin.Tpo -c -o lin.lo lin.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT lin.lo -MD -MP -MF .deps/lin.Tpo -c lin.cc  -fPIC -DPIC -o .libs/lin.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from lin.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT lin.lo -MD -MP -MF .deps/lin.Tpo -c lin.cc -o lin.o >/dev/null 2>&1
mv -f .deps/lin.Tpo .deps/lin.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT series.lo -MD -MP -MF .deps/series.Tpo -c -o series.lo series.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT series.lo -MD -MP -MF .deps/series.Tpo -c series.cc  -fPIC -DPIC -o .libs/series.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from series.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT series.lo -MD -MP -MF .deps/series.Tpo -c series.cc -o series.o >/dev/null 2>&1
mv -f .deps/series.Tpo .deps/series.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT subst.lo -MD -MP -MF .deps/subst.Tpo -c -o subst.lo subst.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT subst.lo -MD -MP -MF .deps/subst.Tpo -c subst.cc  -fPIC -DPIC -o .libs/subst.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from subst.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
subst.cc:1285:14:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const giac::monomial<T>&) [with T = giac::gen]’:
subst.cc:1290:51:   required from here
poly.h:52:193: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   52 |     tensor(const monomial<T> & v) : dim(int(v.index.size())), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const T&, int) [with T = giac::gen]’:
subst.cc:1616:26:   required from here
poly.h:55:172: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   55 |     tensor(const T & v, int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
subst.cc:3209:27:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT subst.lo -MD -MP -MF .deps/subst.Tpo -c subst.cc -o subst.o >/dev/null 2>&1
mv -f .deps/subst.Tpo .deps/subst.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT vecteur.lo -MD -MP -MF .deps/vecteur.Tpo -c -o vecteur.lo vecteur.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT vecteur.lo -MD -MP -MF .deps/vecteur.Tpo -c vecteur.cc  -fPIC -DPIC -o .libs/vecteur.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from vecteur.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
vecteur.cc: In function ‘void giac::householder_mult2(const matrix_double&, const std::vector<double>&, std::vector<double>&, std::vector<double>&, int, bool)’:
vecteur.cc:18087:30: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
18087 |         register giac_double tmp0=(*H0jk);
      |                              ^~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
vecteur.cc:2317:16:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const giac::monomial<T>&) [with T = giac::gen]’:
vecteur.cc:7535:31:   required from here
poly.h:52:193: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   52 |     tensor(const monomial<T> & v) : dim(int(v.index.size())), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
vecteur.cc:14601:14:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int, const std::vector<giac::monomial<T> >&) [with T = giac::gen]’:
poly.h:132:14:   required from ‘giac::tensor<T> giac::tensor<T>::untrunc1(int) const [with T = giac::gen]’
vecteur.cc:6412:46:   required from here
poly.h:59:205: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   59 |     tensor(int d,const std::vector< monomial<T> > & c) : dim(d), coord(c), is_strictly_greater(i_lex_is_strictly_greater),m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT vecteur.lo -MD -MP -MF .deps/vecteur.Tpo -c vecteur.cc -o vecteur.o >/dev/null 2>&1
mv -f .deps/vecteur.Tpo .deps/vecteur.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT sparse.lo -MD -MP -MF .deps/sparse.Tpo -c -o sparse.lo sparse.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT sparse.lo -MD -MP -MF .deps/sparse.Tpo -c sparse.cc  -fPIC -DPIC -o .libs/sparse.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from sparse.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
sparse.cc: In function ‘double giac::l2norm(const std::vector<double>&)’:
sparse.cc:1061:23: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1061 |       register double tmp=*it;
      |                       ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT sparse.lo -MD -MP -MF .deps/sparse.Tpo -c sparse.cc -o sparse.o >/dev/null 2>&1
mv -f .deps/sparse.Tpo .deps/sparse.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT csturm.lo -MD -MP -MF .deps/csturm.Tpo -c -o csturm.lo csturm.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT csturm.lo -MD -MP -MF .deps/csturm.Tpo -c csturm.cc  -fPIC -DPIC -o .libs/csturm.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from csturm.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
csturm.cc:962:14:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
poly.h:622:15:   required from ‘giac::tensor<T> giac::tensor<T>::operator()(const T&) const [with T = giac::gen]’
csturm.cc:2062:36:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘void giac::lexsort(std::vector<monomial<T> >&) [with T = gen]’:
poly.h:623:12:   required from ‘giac::tensor<T> giac::tensor<T>::operator()(const T&) const [with T = giac::gen]’
csturm.cc:2062:36:   required from here
poly.h:522:82: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  522 |     sort_helper<T> M(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>));
      |                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT csturm.lo -MD -MP -MF .deps/csturm.Tpo -c csturm.cc -o csturm.o >/dev/null 2>&1
mv -f .deps/csturm.Tpo .deps/csturm.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT tex.lo -MD -MP -MF .deps/tex.Tpo -c -o tex.lo tex.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT tex.lo -MD -MP -MF .deps/tex.Tpo -c tex.cc  -fPIC -DPIC -o .libs/tex.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from tex.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT tex.lo -MD -MP -MF .deps/tex.Tpo -c tex.cc -o tex.o >/dev/null 2>&1
mv -f .deps/tex.Tpo .deps/tex.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT global.lo -MD -MP -MF .deps/global.Tpo -c -o global.lo global.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT global.lo -MD -MP -MF .deps/global.Tpo -c global.cc  -fPIC -DPIC -o .libs/global.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from global.cc:3:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT global.lo -MD -MP -MF .deps/global.Tpo -c global.cc -o global.o >/dev/null 2>&1
mv -f .deps/global.Tpo .deps/global.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT ifactor.lo -MD -MP -MF .deps/ifactor.Tpo -c -o ifactor.lo ifactor.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT ifactor.lo -MD -MP -MF .deps/ifactor.Tpo -c ifactor.cc  -fPIC -DPIC -o .libs/ifactor.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from ifactor.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
ifactor.cc: In function ‘giac::basis_t* giac::core_sieve(slicetype*, int, basis_t*, basis_t*)’:
ifactor.cc:623:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  623 |     register unsigned char nbits=sizeinbase2(bit->p);
      |                            ^~~~~
ifactor.cc:627:25: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  627 |       register ushort_t p=bit->p;
      |                         ^
ifactor.cc:640:25: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  640 |       register unsigned pos=bit->root1,pos2=bit->root2;
      |                         ^~~
ifactor.cc:640:40: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  640 |       register unsigned pos=bit->root1,pos2=bit->root2;
      |                                        ^~~~
ifactor.cc: In function ‘int giac::msieve(const gen&, const vecteur&, const vecteur&, const __mpz_struct (&)[1], std::vector<basis_t>&, unsigned int, unsigned int, additional_map_t&, const gen&, const gen&, slicetype*, int, int, ushort_t*, ushort_t*&, ushort_t*, std::vector<unsigned int>&, std::vector<unsigned int>&, std::vector<axbinv>&, __mpz_struct (&)[1], __mpz_struct (&)[1], __mpz_struct (&)[1], __mpz_struct (&)[1], __mpz_struct (&)[1], __mpz_struct (&)[1], __mpz_struct (&)[1], __mpz_struct (&)[1], const lp_tab_t&, const context*)’:
ifactor.cc:902:24: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  902 |           register int bi=basisptr->p;
      |                        ^~
ifactor.cc:904:24: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  904 |           register int check=bi-(posss%bi);
      |                        ^~~~~
ifactor.cc: In function ‘void giac::switch_roots(const std::vector<int>&, std::vector<basis_t>&, unsigned int, unsigned int, unsigned int, unsigned int, int, int, const std::vector<unsigned int>&, gen, __mpz_struct (&)[1], int)’:
ifactor.cc:1648:29: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1648 |           register unsigned p=basisptr->p;
      |                             ^
ifactor.cc:1649:29: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1649 |           register unsigned decal = (decal0+(*bvpos))% p;
      |                             ^~~~~
ifactor.cc:1650:29: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1650 |           register unsigned r=basisptr->root1+decal;
      |                             ^
ifactor.cc:1662:29: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1662 |           register unsigned p=basisptr->p;
      |                             ^
ifactor.cc:1663:29: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1663 |           register unsigned decal = (decal0-(*bvpos))% p;
      |                             ^~~~~
ifactor.cc:1664:29: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1664 |           register unsigned r=basisptr->root1+decal;
      |                             ^
ifactor.cc:1678:29: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1678 |           register unsigned p=basisptr->p;
      |                             ^
ifactor.cc:1679:29: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1679 |           register unsigned decal = (decal0+p-be*(*bvpos))% p;
      |                             ^~~~~
ifactor.cc:1680:29: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1680 |           register unsigned r=basisptr->root1+decal;
      |                             ^
ifactor.cc: In function ‘bool giac::msieve(const gen&, gen&, const context*)’:
ifactor.cc:2540:35: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2540 |                 register ushort_t p=bit->p;
      |                                   ^
ifactor.cc:2541:35: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2541 |                 register unsigned pos=bit->root1;
      |                                   ^~~
ifactor.cc:2565:37: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2565 |                   register unsigned p=basisptr->p;
      |                                     ^
ifactor.cc:2566:32: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2566 |                   register int r=basisptr->root1-(*bvpos);
      |                                ^
ifactor.cc:2578:37: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2578 |                   register unsigned p=basisptr->p;
      |                                     ^
ifactor.cc:2579:32: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2579 |                   register int r=basisptr->root1+(*bvpos);
      |                                ^
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT ifactor.lo -MD -MP -MF .deps/ifactor.Tpo -c ifactor.cc -o ifactor.o >/dev/null 2>&1
mv -f .deps/ifactor.Tpo .deps/ifactor.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT alg_ext.lo -MD -MP -MF .deps/alg_ext.Tpo -c -o alg_ext.lo alg_ext.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT alg_ext.lo -MD -MP -MF .deps/alg_ext.Tpo -c alg_ext.cc  -fPIC -DPIC -o .libs/alg_ext.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from alg_ext.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
alg_ext.cc:501:18:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
alg_ext.cc:891:34:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int, const std::vector<giac::monomial<T> >&) [with T = giac::gen]’:
poly.h:132:14:   required from ‘giac::tensor<T> giac::tensor<T>::untrunc1(int) const [with T = giac::gen]’
alg_ext.cc:519:66:   required from here
poly.h:59:205: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   59 |     tensor(int d,const std::vector< monomial<T> > & c) : dim(d), coord(c), is_strictly_greater(i_lex_is_strictly_greater),m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT alg_ext.lo -MD -MP -MF .deps/alg_ext.Tpo -c alg_ext.cc -o alg_ext.o >/dev/null 2>&1
mv -f .deps/alg_ext.Tpo .deps/alg_ext.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT gauss.lo -MD -MP -MF .deps/gauss.Tpo -c -o gauss.lo gauss.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT gauss.lo -MD -MP -MF .deps/gauss.Tpo -c gauss.cc  -fPIC -DPIC -o .libs/gauss.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from gauss.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT gauss.lo -MD -MP -MF .deps/gauss.Tpo -c gauss.cc -o gauss.o >/dev/null 2>&1
mv -f .deps/gauss.Tpo .deps/gauss.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT isom.lo -MD -MP -MF .deps/isom.Tpo -c -o isom.lo isom.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT isom.lo -MD -MP -MF .deps/isom.Tpo -c isom.cc  -fPIC -DPIC -o .libs/isom.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from isom.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT isom.lo -MD -MP -MF .deps/isom.Tpo -c isom.cc -o isom.o >/dev/null 2>&1
mv -f .deps/isom.Tpo .deps/isom.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT plot.lo -MD -MP -MF .deps/plot.Tpo -c -o plot.lo plot.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT plot.lo -MD -MP -MF .deps/plot.Tpo -c plot.cc  -fPIC -DPIC -o .libs/plot.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from plot.cc:34:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const giac::monomial<T>&) [with T = giac::gen]’:
plot.cc:9458:22:   required from here
poly.h:52:193: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   52 |     tensor(const monomial<T> & v) : dim(int(v.index.size())), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT plot.lo -MD -MP -MF .deps/plot.Tpo -c plot.cc -o plot.o >/dev/null 2>&1
mv -f .deps/plot.Tpo .deps/plot.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT plot3d.lo -MD -MP -MF .deps/plot3d.Tpo -c -o plot3d.lo plot3d.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT plot3d.lo -MD -MP -MF .deps/plot3d.Tpo -c plot3d.cc  -fPIC -DPIC -o .libs/plot3d.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from plot3d.cc:34:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT plot3d.lo -MD -MP -MF .deps/plot3d.Tpo -c plot3d.cc -o plot3d.o >/dev/null 2>&1
mv -f .deps/plot3d.Tpo .deps/plot3d.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT rpn.lo -MD -MP -MF .deps/rpn.Tpo -c -o rpn.lo rpn.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT rpn.lo -MD -MP -MF .deps/rpn.Tpo -c rpn.cc  -fPIC -DPIC -o .libs/rpn.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from rpn.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT rpn.lo -MD -MP -MF .deps/rpn.Tpo -c rpn.cc -o rpn.o >/dev/null 2>&1
mv -f .deps/rpn.Tpo .deps/rpn.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT prog.lo -MD -MP -MF .deps/prog.Tpo -c -o prog.lo prog.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT prog.lo -MD -MP -MF .deps/prog.Tpo -c prog.cc  -fPIC -DPIC -o .libs/prog.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from prog.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
prog.cc:4482:18:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT prog.lo -MD -MP -MF .deps/prog.Tpo -c prog.cc -o prog.o >/dev/null 2>&1
mv -f .deps/prog.Tpo .deps/prog.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT pari.lo -MD -MP -MF .deps/pari.Tpo -c -o pari.lo pari.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT pari.lo -MD -MP -MF .deps/pari.Tpo -c pari.cc  -fPIC -DPIC -o .libs/pari.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from pari.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
pari.cc: In function ‘giac::gen giac::in_pari(const gen&, const context*)’:
pari.cc:842:26: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
  842 |               argvec[k]= (GEN) v[j].val;
      |                          ^~~~~~~~~~~~~~
pari.cc:860:33: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
  860 |                       argvec[k]=(long int*)(pos -1);
      |                                 ^~~~~~~~~~~~~~~~~~~
pari.cc:868:31: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
  868 |                     argvec[k]=(long int*) v[j].val;
      |                               ^~~~~~~~~~~~~~~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT pari.lo -MD -MP -MF .deps/pari.Tpo -c pari.cc -o pari.o >/dev/null 2>&1
mv -f .deps/pari.Tpo .deps/pari.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT cocoa.lo -MD -MP -MF .deps/cocoa.Tpo -c -o cocoa.lo cocoa.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT cocoa.lo -MD -MP -MF .deps/cocoa.Tpo -c cocoa.cc  -fPIC -DPIC -o .libs/cocoa.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from cocoa.cc:4:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
cocoa.cc: In function ‘void giac::special_mod(modint2&, modint2, modint, modint, modint2)’:
cocoa.cc:6153:22: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 6153 |     register modint2 y=x-c*d;
      |                      ^
cocoa.cc: In function ‘void giac::special_mod(double&, double, modint, modint, double)’:
cocoa.cc:6160:22: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 6160 |     register modint2 y=modint2(x-c*d);
      |                      ^
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT cocoa.lo -MD -MP -MF .deps/cocoa.Tpo -c cocoa.cc -o cocoa.o >/dev/null 2>&1
mv -f .deps/cocoa.Tpo .deps/cocoa.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT unary.lo -MD -MP -MF .deps/unary.Tpo -c -o unary.lo unary.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT unary.lo -MD -MP -MF .deps/unary.Tpo -c unary.cc  -fPIC -DPIC -o .libs/unary.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from unary.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT unary.lo -MD -MP -MF .deps/unary.Tpo -c unary.cc -o unary.o >/dev/null 2>&1
mv -f .deps/unary.Tpo .deps/unary.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT usual.lo -MD -MP -MF .deps/usual.Tpo -c -o usual.lo usual.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT usual.lo -MD -MP -MF .deps/usual.Tpo -c usual.cc  -fPIC -DPIC -o .libs/usual.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from usual.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
usual.cc:5214:14:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
usual.cc:6036:36:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int, const std::vector<giac::monomial<T> >&) [with T = giac::gen]’:
poly.h:147:14:   required from ‘giac::tensor<T> giac::tensor<T>::trunc1() const [with T = giac::gen]’
usual.cc:7283:28:   required from here
poly.h:59:205: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   59 |     tensor(int d,const std::vector< monomial<T> > & c) : dim(d), coord(c), is_strictly_greater(i_lex_is_strictly_greater),m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT usual.lo -MD -MP -MF .deps/usual.Tpo -c usual.cc -o usual.o >/dev/null 2>&1
mv -f .deps/usual.Tpo .deps/usual.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT identificateur.lo -MD -MP -MF .deps/identificateur.Tpo -c -o identificateur.lo identificateur.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT identificateur.lo -MD -MP -MF .deps/identificateur.Tpo -c identificateur.cc  -fPIC -DPIC -o .libs/identificateur.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from identificateur.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT identificateur.lo -MD -MP -MF .deps/identificateur.Tpo -c identificateur.cc -o identificateur.o >/dev/null 2>&1
mv -f .deps/identificateur.Tpo .deps/identificateur.Plo
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DIN_GIAC -I. -I.. -I. -I..       -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT gen.lo -MD -MP -MF .deps/gen.Tpo -c -o gen.lo gen.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DIN_GIAC -I. -I.. -I. -I.. -g -O2 -fno-strict-aliasing -DGIAC_GENERIC_CONSTANTS -DTIMEOUT -DHAVE_LIBMICROPYTHON -fpermissive -DQUICKJS -MT gen.lo -MD -MP -MF .deps/gen.Tpo -c gen.cc  -fPIC -DPIC -o .libs/gen.o
In file included from poly.h:26,
                 from gen.h:71,
                 from giacPCH.h:32,
                 from gen.cc:2:
monomial.h:341:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  341 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/12.2.1/bits/refwrap.h:39,
                 from /usr/include/c++/12.2.1/vector:66,
                 from vector.h:474,
                 from index.h:21,
                 from giacPCH.h:8:
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:342:28: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  342 |     sort_helper(const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> is_strictly_greater):strictly_greater(is_strictly_greater) {};
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:680:25: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  680 |              const std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h: In function ‘void giac::Mul(typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, typename std::vector<monomial<T> >::const_iterator&, std::vector<monomial<T> >&, bool (*)(const index_m&, const index_m&), std::pointer_to_binary_function<const monomial<T>&, const monomial<T>&, bool>)’:
monomial.h:729:44: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
  729 |     typedef std::map< index_t,T,const std::pointer_to_binary_function < const index_m &, const index_m &, bool> > application;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
monomial.h:730:37: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::index_m&; _Arg2 = const giac::index_m&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
  730 |     application produit(std::ptr_fun(is_strictly_greater));
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
In file included from poly.h:27:
threaded.h: In function ‘void giac::in_out_heap(T*, size_t, T)’:
threaded.h:1303:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 1303 |       register T * ptr=tab+childindex;
      |                    ^~~
threaded.h: In function ‘int giac::hashdivrem(const std::vector<T_unsigned<T, U> >&, const std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, std::vector<T_unsigned<T, U> >&, const std::vector<U>&, const R&, double, bool, int)’:
threaded.h:2727:20: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2727 |         register U u=cit->u;
      |                    ^
threaded.h:2796:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2796 |               register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                            ^~~
threaded.h:2805:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 2805 |               register int deg=int(u >> mainvar);
      |                            ^~~
threaded.h:3241:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3241 |       register U u=cit->u;
      |                  ^
threaded.h:3336:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3336 |             register int deg = int(u >> mainvar); // deg=deg1+it2->u/mainvar;
      |                          ^~~
threaded.h:3355:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 3355 |             register int deg=int(u >> mainvar);
      |                          ^~~
poly.h: At global scope:
poly.h:43:10: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   43 |     std::pointer_to_binary_function < const monomial<T> &, const monomial<T> &, bool> m_is_strictly_greater ;
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sym2poly.h:27,
                 from giacPCH.h:38:
gausspol.h:96:29: warning: ‘template<class _Arg1, class _Arg2, class _Result> class std::pointer_to_binary_function’ is deprecated [-Wdeprecated-declarations]
   96 |                  const std::pointer_to_binary_function < const monomial<gen> &, const monomial<gen> &, bool> m_is_greater
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1131:11: note: declared here
 1131 |     class pointer_to_binary_function
      |           ^~~~~~~~~~~~~~~~~~~~~~~~~~
gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
gen.cc: In function ‘giac::gen giac::operator_plus(const gen&, const gen&, unsigned int, const context*)’:
gen.cc:4700:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4700 |     register ref_mpz_t * e;
      |                          ^
gen.cc: In function ‘giac::gen giac::operator_plus(const gen&, const gen&, const context*)’:
gen.cc:4910:23: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4910 |     register unsigned t=(a.type<< _DECALAGE) | b.type;
      |                       ^
gen.cc: In function ‘giac::gen giac::operator+(const gen&, const gen&)’:
gen.cc:4917:23: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 4917 |     register unsigned t=(a.type<< _DECALAGE) | b.type;
      |                       ^
gen.cc: In function ‘giac::gen giac::operator_minus(const gen&, const gen&, unsigned int, const context*)’:
gen.cc:5498:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 5498 |     register ref_mpz_t * e;
      |                          ^
gen.cc: In function ‘giac::gen giac::operator_minus(const gen&, const gen&, const context*)’:
gen.cc:5644:23: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 5644 |     register unsigned t=(a.type<< _DECALAGE) | b.type;
      |                       ^
gen.cc: In function ‘giac::gen giac::operator-(const gen&, const gen&)’:
gen.cc:5651:23: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 5651 |     register unsigned t=(a.type<< _DECALAGE) | b.type;
      |                       ^
gen.cc: In function ‘void giac::type_operator_times(const gen&, const gen&, gen&)’:
gen.cc:5980:23: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 5980 |     register unsigned t=(a.type<< _DECALAGE) | b.type;
      |                       ^
gen.cc:5993:25: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 5993 |       register longlong ab=longlong(a.val)*b.val;
      |                         ^~
gen.cc: In function ‘void giac::type_operator_plus_times(const gen&, const gen&, gen&)’:
gen.cc:6044:23: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 6044 |     register unsigned t=(a.type<< _DECALAGE) | b.type;
      |                       ^
gen.cc: In function ‘void giac::type_operator_minus_times(const gen&, const gen&, gen&)’:
gen.cc:6124:23: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 6124 |     register unsigned t=(a.type<< _DECALAGE) | b.type;
      |                       ^
gen.cc: In function ‘giac::gen giac::operator_times(const gen&, const gen&, unsigned int, const context*)’:
gen.cc:6247:26: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 6247 |     register ref_mpz_t * e;
      |                          ^
gen.cc: In function ‘giac::gen giac::operator_times(const gen&, const gen&, const context*)’:
gen.cc:6638:23: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 6638 |     register unsigned t=(a.type<< _DECALAGE) | b.type;
      |                       ^
gen.cc: In function ‘giac::gen giac::operator*(const gen&, const gen&)’:
gen.cc:6645:23: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
 6645 |     register unsigned t=(a.type<< _DECALAGE) | b.type;
      |                       ^
gen.cc: In function ‘giac::gen giac::irem(const gen&, const gen&, gen&)’:
gen.cc:11199:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
11199 |     register int r;
      |                  ^
gen.cc: In function ‘giac::gen giac::aplatir_plus_only(const gen&)’:
gen.cc:12352:28: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
12352 |       register const gen * f;
      |                            ^
In file included from /usr/include/c++/12.2.1/bits/stl_pair.h:62,
                 from /usr/include/c++/12.2.1/bits/stl_algobase.h:64,
                 from /usr/include/c++/12.2.1/bits/specfun.h:45,
                 from /usr/include/c++/12.2.1/cmath:1935,
                 from first.h:543,
                 from giacPCH.h:4:
/usr/include/c++/12.2.1/bits/utility.h: In instantiation of ‘constexpr const std::size_t std::tuple_size_v<giac::gen(const giac::gen&)>’:
/usr/include/c++/12.2.1/tuple:1862:24:   required from ‘constexpr decltype(auto) std::apply(_Fn&&, _Tuple&&) [with _Fn = giac::dbgprint_vector<giac::gen>&; _Tuple = giac::gen (&)(const giac::gen&)]’
gen.cc:16959:19:   required from here
/usr/include/c++/12.2.1/bits/utility.h:75:61: error: incomplete type ‘std::tuple_size<giac::gen(const giac::gen&)>’ used in nested name specifier
   75 |     inline constexpr size_t tuple_size_v = tuple_size<_Tp>::value;
      |                                                             ^~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(int) [with T = giac::gen]’:
gen.cc:2422:23:   required from here
poly.h:50:168: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   50 |     explicit tensor(int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor() [with T = giac::gen]’:
gen.cc:7360:16:   required from here
poly.h:49:154: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   49 |     tensor() : dim(0), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) { }
      |                                                                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const T&, int) [with T = giac::gen]’:
gen.cc:7933:46:   required from here
poly.h:55:172: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   55 |     tensor(const T & v, int d) : dim(d), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
poly.h: In instantiation of ‘giac::tensor<T>::tensor(const giac::monomial<T>&) [with T = giac::gen]’:
gen.cc:8437:25:   required from here
poly.h:52:193: warning: ‘std::pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun(_Result (*)(_Arg1, _Arg2)) [with _Arg1 = const giac::monomial<giac::gen>&; _Arg2 = const giac::monomial<giac::gen>&; _Result = bool]’ is deprecated: use 'std::function' instead [-Wdeprecated-declarations]
   52 |     tensor(const monomial<T> & v) : dim(int(v.index.size())), is_strictly_greater(i_lex_is_strictly_greater), m_is_strictly_greater(std::ptr_fun<const monomial<T> &, const monomial<T> &, bool>(m_lex_is_strictly_greater<T>)) {
      |                                                                                                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12.2.1/bits/stl_function.h:1153:5: note: declared here
 1153 |     ptr_fun(_Result (*__x)(_Arg1, _Arg2))
      |     ^~~~~~~
make[2]: Leaving directory '/home/me/TMP/giac-1.9.0/src'
make[2]: *** [Makefile:814: gen.lo] Error 1
make[1]: Leaving directory '/home/me/TMP/giac-1.9.0'
make[1]: *** [Makefile:413: all-recursive] Error 1
make: *** [Makefile:342: all] Error 2
