Mercurial > hgweb > octave
changeset 34652:a3f3a128ab26 bytecode-interpreter
maint: Merge default to bytecode-interpreter
author | Arun Giridhar <arungiridhar@gmail.com> |
---|---|
date | Fri, 20 Jun 2025 15:56:18 -0400 |
parents | 10eb80b58f1a 281bdeb70b42 |
children | a54e055bb4ba |
files | configure.ac libinterp/corefcn/call-stack.cc libinterp/corefcn/cellfun.cc libinterp/corefcn/load-path.cc libinterp/corefcn/stack-frame.cc libinterp/corefcn/toplev.cc libinterp/corefcn/variables.cc libinterp/octave-value/ov-base-scalar.h libinterp/octave-value/ov-base.cc |
diffstat | 273 files changed, 799 insertions(+), 4750 deletions(-) [+] |
line wrap: on
line diff
--- a/configure.ac +++ b/configure.ac @@ -1230,6 +1230,15 @@ ## Check whether encoding of quiet NaN value is conformant to IEEE 754-2008 OCTAVE_IEEE754_QNAN +## Check whether quiet NaN values retain their payload on arithmetic operations +OCTAVE_QNAN_WITH_PAYLOAD + +## Check if casting double precision NaN values to the type "char" results in 0 +OCTAVE_DOUBLE_QNAN_CHAR_0 + +## Check if casting single precision NaN values to the type "char" results in 0 +OCTAVE_FLOAT_QNAN_CHAR_0 + ### Checks for functions and variables. dnl The list of functions is short because we use gnulib to guarantee
--- a/etc/NEWS.11.md +++ b/etc/NEWS.11.md @@ -28,6 +28,9 @@ or permutation of the inputs for performance. Now Octave automatically picks the fastest calculation order irrespective of the input orientation. +- The `roots` function now accepts only a numeric argument. Convert any + non-numeric input to a numeric value with `double()`. + ### Graphical User Interface - The GUI now uses scalable SVG icons for beautiful display at any size.
--- a/examples/code/make_int.cc +++ b/examples/code/make_int.cc @@ -6,8 +6,8 @@ #include <ostream> #include <string> -#include <octave/lo-mappers.h> #include <octave/lo-utils.h> +#include <octave/mappers.h> #include <octave/mx-base.h> #include <octave/str-vec.h>
--- a/libgui/src/m-editor/file-editor.cc +++ b/libgui/src/m-editor/file-editor.cc @@ -53,8 +53,8 @@ #include "gui-settings.h" #include "main-window.h" -#include "lo-sysdep.h" #include "oct-env.h" +#include "oct-sysdep.h" #include "event-manager.h" #include "interpreter.h"
--- a/libgui/src/workspace-view.cc +++ b/libgui/src/workspace-view.cc @@ -75,6 +75,7 @@ m_view->setContextMenuPolicy (Qt::CustomContextMenu); m_view->setShowGrid (false); (m_view->verticalHeader) ()->hide (); + m_view->verticalHeader ()->setMinimumSectionSize(1); // allow smaller row sizes m_view->setAlternatingRowColors (true); m_view_previous_row_count = 0;
--- a/libinterp/build-env.h +++ b/libinterp/build-env.h @@ -31,7 +31,6 @@ #include "oct-map.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(build_env) extern OCTINTERP_API octave_scalar_map features ();
--- a/libinterp/build-env.in.cc +++ b/libinterp/build-env.in.cc @@ -32,7 +32,6 @@ #include "build-env.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(build_env) const char *AMD_CPPFLAGS = %OCTAVE_CONF_AMD_CPPFLAGS%;
--- a/libinterp/corefcn/__ftp__.cc +++ b/libinterp/corefcn/__ftp__.cc @@ -34,10 +34,10 @@ #include "dir-ops.h" #include "file-ops.h" #include "file-stat.h" -#include "lo-sysdep.h" +#include "glob-match.h" #include "oct-env.h" #include "oct-handle.h" -#include "glob-match.h" +#include "oct-sysdep.h" #include "url-transfer.h" #include "defun.h"
--- a/libinterp/corefcn/__magick_read__.cc +++ b/libinterp/corefcn/__magick_read__.cc @@ -28,8 +28,8 @@ #endif #include "file-stat.h" -#include "lo-sysdep.h" #include "oct-env.h" +#include "oct-sysdep.h" #include "oct-time.h" #include "defun.h"
--- a/libinterp/corefcn/__pchip_deriv__.cc +++ b/libinterp/corefcn/__pchip_deriv__.cc @@ -27,7 +27,7 @@ # include "config.h" #endif -#include "lo-slatec-proto.h" +#include "slatec-proto.h" #include "defun.h" #include "error.h"
--- a/libinterp/corefcn/besselj.cc +++ b/libinterp/corefcn/besselj.cc @@ -27,7 +27,7 @@ # include "config.h" #endif -#include "lo-specfun.h" +#include "oct-specfun.h" #include "quit.h" #include "defun.h"
--- a/libinterp/corefcn/bsxfun.cc +++ b/libinterp/corefcn/bsxfun.cc @@ -31,7 +31,7 @@ #include <string> #include <vector> -#include "lo-mappers.h" +#include "mappers.h" #include "defun.h" #include "interpreter.h"
--- a/libinterp/corefcn/call-stack.cc +++ b/libinterp/corefcn/call-stack.cc @@ -27,7 +27,7 @@ # include "config.h" #endif -#include "lo-regexp.h" +#include "oct-regexp.h" #include "str-vec.h" #include "builtin-defun-decls.h"
--- a/libinterp/corefcn/cellfun.cc +++ b/libinterp/corefcn/cellfun.cc @@ -27,12 +27,12 @@ # include "config.h" #endif +#include <list> +#include <memory> #include <string> #include <vector> -#include <list> -#include <memory> - -#include "lo-mappers.h" + +#include "mappers.h" #include "oct-locbuf.h" #include "oct-string.h"
--- a/libinterp/corefcn/colloc.cc +++ b/libinterp/corefcn/colloc.cc @@ -31,7 +31,7 @@ #include <string> #include "CollocWt.h" -#include "lo-mappers.h" +#include "mappers.h" #include "defun.h" #include "error.h"
--- a/libinterp/corefcn/dasrt.cc +++ b/libinterp/corefcn/dasrt.cc @@ -31,7 +31,7 @@ #include <string> #include "DASRT.h" -#include "lo-mappers.h" +#include "mappers.h" #include "defun.h" #include "error.h"
--- a/libinterp/corefcn/data.cc +++ b/libinterp/corefcn/data.cc @@ -5326,8 +5326,15 @@ } /* -%!assert (single (NA ("double")), NA ("single")) -%!assert (double (NA ("single")), NA ("double")) +%!testif HAVE_QNAN_WITH_PAYLOAD +%! assert (single (NA ("double")), NA ("single")) +%!testif HAVE_QNAN_WITH_PAYLOAD +%! assert (double (NA ("single")), NA ("double")) +// Duplicate from above. Only for test statistics +%!testif ; ! __have_feature__ ("QNAN_WITH_PAYLOAD") <59830> +%! assert (single (NA ("double")), NA ("single")) +%!testif ; ! __have_feature__ ("QNAN_WITH_PAYLOAD") <59830> +%! assert (double (NA ("single")), NA ("double")) */ DEFUN (false, args, ,
--- a/libinterp/corefcn/debug.cc +++ b/libinterp/corefcn/debug.cc @@ -46,7 +46,7 @@ #include "input.h" #include "interpreter-private.h" #include "interpreter.h" -#include "lo-sysdep.h" +#include "oct-sysdep.h" #include "octave-preserve-stream-state.h" #include "ov-usr-fcn.h" #include "ov.h"
--- a/libinterp/corefcn/defaults.cc +++ b/libinterp/corefcn/defaults.cc @@ -48,7 +48,6 @@ #include "default-defs.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(config) // Variables that name directories or files are substituted into source
--- a/libinterp/corefcn/defaults.h +++ b/libinterp/corefcn/defaults.h @@ -33,7 +33,6 @@ #include "pathsearch.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(config) extern OCTINTERP_API std::string
--- a/libinterp/corefcn/dirfns.cc +++ b/libinterp/corefcn/dirfns.cc @@ -39,9 +39,9 @@ #include "file-ops.h" #include "file-stat.h" #include "glob-match.h" -#include "lo-sysdep.h" #include "oct-env.h" #include "oct-glob.h" +#include "oct-sysdep.h" #include "pathsearch.h" #include "str-vec.h"
--- a/libinterp/corefcn/dlmread.cc +++ b/libinterp/corefcn/dlmread.cc @@ -38,7 +38,7 @@ #include "file-ops.h" #include "lo-ieee.h" -#include "lo-sysdep.h" +#include "oct-sysdep.h" #include "defun.h" #include "interpreter.h"
--- a/libinterp/corefcn/dot.cc +++ b/libinterp/corefcn/dot.cc @@ -27,7 +27,7 @@ # include "config.h" #endif -#include "lo-blas-proto.h" +#include "blas-proto.h" #include "mx-base.h" #include "builtin-defun-decls.h"
--- a/libinterp/corefcn/ellipj.cc +++ b/libinterp/corefcn/ellipj.cc @@ -29,7 +29,7 @@ #include "defun.h" #include "error.h" -#include "lo-specfun.h" +#include "oct-specfun.h" OCTAVE_BEGIN_NAMESPACE(octave)
--- a/libinterp/corefcn/fcn-info.cc +++ b/libinterp/corefcn/fcn-info.cc @@ -29,8 +29,8 @@ #include "file-ops.h" #include "file-stat.h" -#include "lo-sysdep.h" #include "oct-env.h" +#include "oct-sysdep.h" #include "defun.h" #include "fcn-info.h"
--- a/libinterp/corefcn/fft.cc +++ b/libinterp/corefcn/fft.cc @@ -27,7 +27,7 @@ # include "config.h" #endif -#include "lo-mappers.h" +#include "mappers.h" #include "defun.h" #include "error.h"
--- a/libinterp/corefcn/fft2.cc +++ b/libinterp/corefcn/fft2.cc @@ -27,7 +27,7 @@ # include "config.h" #endif -#include "lo-mappers.h" +#include "mappers.h" #include "defun.h" #include "error.h"
--- a/libinterp/corefcn/fftn.cc +++ b/libinterp/corefcn/fftn.cc @@ -27,7 +27,7 @@ # include "config.h" #endif -#include "lo-mappers.h" +#include "mappers.h" #include "defun.h" #include "error.h"
--- a/libinterp/corefcn/file-io.cc +++ b/libinterp/corefcn/file-io.cc @@ -55,11 +55,11 @@ #include "file-stat.h" #include "iconv-wrappers.h" #include "lo-ieee.h" -#include "lo-sysdep.h" #include "localcharset-wrapper.h" #include "mkostemp-wrapper.h" #include "oct-env.h" #include "oct-locbuf.h" +#include "oct-sysdep.h" #include "unistd-wrappers.h" #include "builtin-defun-decls.h"
--- a/libinterp/corefcn/gcd.cc +++ b/libinterp/corefcn/gcd.cc @@ -27,11 +27,11 @@ # include "config.h" #endif +#include "CNDArray.h" #include "dNDArray.h" -#include "CNDArray.h" +#include "fCNDArray.h" #include "fNDArray.h" -#include "fCNDArray.h" -#include "lo-mappers.h" +#include "mappers.h" #include "oct-binmap.h" #include "defun.h"
--- a/libinterp/corefcn/gl-render.cc +++ b/libinterp/corefcn/gl-render.cc @@ -36,7 +36,7 @@ # include <windows.h> #endif -#include "lo-mappers.h" +#include "mappers.h" #include "oct-locbuf.h" #include "errwarn.h"
--- a/libinterp/corefcn/gl2ps-print.cc +++ b/libinterp/corefcn/gl2ps-print.cc @@ -41,9 +41,9 @@ #include "file-ops.h" #include "filepos-wrappers.h" -#include "lo-mappers.h" +#include "mappers.h" +#include "oct-env.h" #include "oct-locbuf.h" -#include "oct-env.h" #include "unistd-wrappers.h" #include "unistr-wrappers.h" #include "unwind-prot.h"
--- a/libinterp/corefcn/graphics.cc +++ b/libinterp/corefcn/graphics.cc @@ -44,8 +44,8 @@ #include "cmd-edit.h" #include "file-ops.h" #include "file-stat.h" -#include "lo-sysdep.h" #include "oct-locbuf.h" +#include "oct-sysdep.h" #include "oct-time.h" #include "builtin-defun-decls.h"
--- a/libinterp/corefcn/hash.cc +++ b/libinterp/corefcn/hash.cc @@ -42,7 +42,7 @@ #include <string> -#include "lo-hash.h" +#include "oct-hash.h" #include "defun.h" #include "error.h"
--- a/libinterp/corefcn/help.cc +++ b/libinterp/corefcn/help.cc @@ -40,9 +40,9 @@ #include "cmd-edit.h" #include "file-ops.h" #include "file-stat.h" -#include "lo-sysdep.h" #include "oct-env.h" #include "oct-locbuf.h" +#include "oct-sysdep.h" #include "str-vec.h" #include "Cell.h"
--- a/libinterp/corefcn/interpreter.cc +++ b/libinterp/corefcn/interpreter.cc @@ -35,19 +35,19 @@ #include <string> #include <thread> +#include "blas-proto.h" #include "cmd-edit.h" #include "cmd-hist.h" #include "file-ops.h" +#include "file-ops.h" #include "file-stat.h" -#include "file-ops.h" #include "fpucw-wrappers.h" -#include "lo-blas-proto.h" -#include "lo-error.h" -#include "lo-sysdep.h" #include "oct-env.h" +#include "oct-error.h" +#include "oct-sysdep.h" #include "quit.h" +#include "signal-wrappers.h" #include "str-vec.h" -#include "signal-wrappers.h" #include "unistd-wrappers.h" #include "builtin-defun-decls.h"
--- a/libinterp/corefcn/load-path.cc +++ b/libinterp/corefcn/load-path.cc @@ -32,8 +32,8 @@ #include "dir-ops.h" #include "file-ops.h" -#include "lo-sysdep.h" #include "oct-env.h" +#include "oct-sysdep.h" #include "pathsearch.h" #if ! defined (OCTAVE_USE_WINDOWS_API) # include "file-stat.h"
--- a/libinterp/corefcn/load-save.cc +++ b/libinterp/corefcn/load-save.cc @@ -42,11 +42,11 @@ #include "file-ops.h" #include "file-stat.h" #include "glob-match.h" -#include "lo-mappers.h" -#include "lo-sysdep.h" #include "mach-info.h" +#include "mappers.h" #include "oct-env.h" #include "oct-locbuf.h" +#include "oct-sysdep.h" #include "oct-time.h" #include "quit.h" #include "str-vec.h"
--- a/libinterp/corefcn/ls-hdf5.cc +++ b/libinterp/corefcn/ls-hdf5.cc @@ -42,13 +42,13 @@ #include "data-conv.h" #include "file-ops.h" #include "glob-match.h" -#include "lo-mappers.h" #include "mach-info.h" +#include "mappers.h" #include "oct-env.h" +#include "oct-locbuf.h" #include "oct-time.h" #include "quit.h" #include "str-vec.h" -#include "oct-locbuf.h" #include "Cell.h" #include "defun.h"
--- a/libinterp/corefcn/ls-mat-ascii.cc +++ b/libinterp/corefcn/ls-mat-ascii.cc @@ -40,8 +40,8 @@ #include "data-conv.h" #include "file-ops.h" #include "glob-match.h" -#include "lo-mappers.h" #include "mach-info.h" +#include "mappers.h" #include "oct-env.h" #include "oct-time.h" #include "quit.h"
--- a/libinterp/corefcn/ls-mat4.cc +++ b/libinterp/corefcn/ls-mat4.cc @@ -38,8 +38,8 @@ #include "data-conv.h" #include "file-ops.h" #include "glob-match.h" -#include "lo-mappers.h" #include "mach-info.h" +#include "mappers.h" #include "oct-env.h" #include "oct-locbuf.h" #include "oct-time.h"
--- a/libinterp/corefcn/ls-mat5.cc +++ b/libinterp/corefcn/ls-mat5.cc @@ -43,11 +43,11 @@ #include "file-ops.h" #include "file-stat.h" #include "glob-match.h" -#include "lo-mappers.h" -#include "lo-sysdep.h" #include "mach-info.h" +#include "mappers.h" #include "oct-env.h" #include "oct-locbuf.h" +#include "oct-sysdep.h" #include "oct-time.h" #include "quit.h" #include "str-vec.h" @@ -2334,14 +2334,40 @@ static octave_idx_type max_dim_val = std::numeric_limits<int32_t>::max (); - for (int i = 0; i < nd; i++) + // Strings need to be converted here (or dim-vector will be off). + charNDArray chm; + uint16_t *u16_str; + std::size_t n16_str; + bool conv_u16 = false; + if (tc.is_string ()) { - if (dv(i) > max_dim_val) + chm = tc.char_array_value (); + u16_str = maybe_convert_to_u16 (chm, n16_str); + + if (u16_str) + conv_u16 = true; + } + + + if (conv_u16) + { + if (n16_str > static_cast<std::size_t> (max_dim_val)) { warn_dim_too_large (name); return true; // skip to next } } + else + { + for (int i = 0; i < nd; i++) + { + if (dv(i) > max_dim_val) + { + warn_dim_too_large (name); + return true; // skip to next + } + } + } if (tc.issparse ()) { @@ -2483,25 +2509,10 @@ write_mat5_tag (os, miINT32, dim_len); - // Strings need to be converted here (or dim-vector will be off). - charNDArray chm; - uint16_t *u16_str; - std::size_t n16_str; - bool conv_u16 = false; - if (tc.is_string ()) - { - chm = tc.char_array_value (); - u16_str = maybe_convert_to_u16 (chm, n16_str); - - if (u16_str) - conv_u16 = true; - } - if (conv_u16) { - int32_t n = 1; - os.write (reinterpret_cast<char *> (&n), 4); - os.write (reinterpret_cast<char *> (&n16_str), 4); + int32_t n[2] = {1, static_cast<int32_t> (n16_str)}; + os.write (reinterpret_cast<char *> (&n), 8); } else for (int i = 0; i < nd; i++)
--- a/libinterp/corefcn/ls-oct-binary.cc +++ b/libinterp/corefcn/ls-oct-binary.cc @@ -35,8 +35,8 @@ #include "data-conv.h" #include "file-ops.h" #include "glob-match.h" -#include "lo-mappers.h" #include "mach-info.h" +#include "mappers.h" #include "oct-env.h" #include "oct-locbuf.h" #include "oct-time.h"
--- a/libinterp/corefcn/ls-oct-text.cc +++ b/libinterp/corefcn/ls-oct-text.cc @@ -41,8 +41,8 @@ #include "data-conv.h" #include "file-ops.h" #include "glob-match.h" -#include "lo-mappers.h" #include "mach-info.h" +#include "mappers.h" #include "oct-env.h" #include "oct-time.h" #include "quit.h"
--- a/libinterp/corefcn/lsode.cc +++ b/libinterp/corefcn/lsode.cc @@ -31,16 +31,16 @@ #include <string> #include "LSODE.h" -#include "lo-mappers.h" +#include "mappers.h" #include "defun.h" #include "error.h" #include "errwarn.h" #include "interpreter-private.h" #include "interpreter.h" +#include "ov-cell.h" +#include "ov-fcn.h" #include "ovl.h" -#include "ov-fcn.h" -#include "ov-cell.h" #include "pager.h" #include "pr-output.h" #include "unwind-prot.h"
--- a/libinterp/corefcn/mappers.cc +++ b/libinterp/corefcn/mappers.cc @@ -30,8 +30,8 @@ #include <cctype> #include "lo-ieee.h" -#include "lo-specfun.h" -#include "lo-mappers.h" +#include "mappers.h" +#include "oct-specfun.h" #include "defun.h" #include "error.h" @@ -1483,10 +1483,21 @@ %!assert (! isna (single (Inf))) %!assert (! isna (single (NaN))) -%!assert (isna (single (NA))) -%!assert (isna (single (rand (1,10))), false (1,10)) -%!assert (isna (single ([NaN -Inf -1 0 1 Inf NA])), -%! [false, false, false, false, false, false, true]) +%!testif HAVE_QNAN_WITH_PAYLOAD +%! assert (isna (single (NA))) +%!testif HAVE_QNAN_WITH_PAYLOAD +%! assert (isna (single (rand (1,10))), false (1,10)) +%!testif HAVE_QNAN_WITH_PAYLOAD +%! assert (isna (single ([NaN -Inf -1 0 1 Inf NA])), +%! [false, false, false, false, false, false, true]) +// Duplicate from above. Only for test statistics +%!testif ; ! __have_feature__ ("QNAN_WITH_PAYLOAD") <59830> +%! assert (isna (single (NA))) +%!testif ; ! __have_feature__ ("QNAN_WITH_PAYLOAD") <59830> +%! assert (isna (single (rand (1,10))), false (1,10)) +%!testif ; ! __have_feature__ ("QNAN_WITH_PAYLOAD") <59830> +%! assert (isna (single ([NaN -Inf -1 0 1 Inf NA])), +%! [false, false, false, false, false, false, true]) %!error isna () %!error isna (1, 2)
--- a/libinterp/corefcn/max.cc +++ b/libinterp/corefcn/max.cc @@ -30,7 +30,7 @@ #include <cmath> #include "lo-ieee.h" -#include "lo-mappers.h" +#include "mappers.h" #include "dNDArray.h" #include "CNDArray.h" #include "quit.h"
--- a/libinterp/corefcn/oct-hist.cc +++ b/libinterp/corefcn/oct-hist.cc @@ -46,9 +46,9 @@ #include "cmd-hist.h" #include "file-ops.h" -#include "lo-mappers.h" -#include "lo-sysdep.h" +#include "mappers.h" #include "oct-env.h" +#include "oct-sysdep.h" #include "oct-time.h" #include "str-vec.h" #include "unistd-wrappers.h"
--- a/libinterp/corefcn/oct-procbuf.cc +++ b/libinterp/corefcn/oct-procbuf.cc @@ -43,8 +43,8 @@ # include <unistd.h> #endif -#include "lo-mappers.h" #include "lo-utils.h" +#include "mappers.h" #include "oct-procbuf.h" #include "oct-syscalls.h" #include "sysdep.h"
--- a/libinterp/corefcn/oct-stream.cc +++ b/libinterp/corefcn/oct-stream.cc @@ -44,8 +44,8 @@ #include "Cell.h" #include "byte-swap.h" #include "lo-ieee.h" -#include "lo-mappers.h" #include "lo-utils.h" +#include "mappers.h" #include "oct-locbuf.h" #include "octave-preserve-stream-state.h" #include "quit.h"
--- a/libinterp/corefcn/ordqz.cc +++ b/libinterp/corefcn/ordqz.cc @@ -37,7 +37,7 @@ #include <cmath> #include "f77-fcn.h" -#include "lo-lapack-proto.h" +#include "lapack-proto.h" #include "qr.h" #include "quit.h"
--- a/libinterp/corefcn/ordschur.cc +++ b/libinterp/corefcn/ordschur.cc @@ -27,9 +27,10 @@ # include "config.h" #endif +#include "lapack-proto.h" + #include "defun.h" #include "error.h" -#include "lo-lapack-proto.h" #include "ovl.h" OCTAVE_BEGIN_NAMESPACE(octave)
--- a/libinterp/corefcn/pr-output.cc +++ b/libinterp/corefcn/pr-output.cc @@ -40,8 +40,8 @@ #include "Range.h" #include "cmd-edit.h" #include "dMatrix.h" -#include "lo-mappers.h" #include "mach-info.h" +#include "mappers.h" #include "oct-cmplx.h" #include "oct-string.h" #include "quit.h"
--- a/libinterp/corefcn/psi.cc +++ b/libinterp/corefcn/psi.cc @@ -27,14 +27,14 @@ # include "config.h" #endif +#include "oct-specfun.h" + #include "ov.h" #include "defun.h" #include "error.h" #include "dNDArray.h" #include "fNDArray.h" -#include "lo-specfun.h" - OCTAVE_BEGIN_NAMESPACE(octave) DEFUN (psi, args, ,
--- a/libinterp/corefcn/quad.cc +++ b/libinterp/corefcn/quad.cc @@ -30,16 +30,16 @@ #include <string> #include "Quad.h" -#include "lo-mappers.h" +#include "mappers.h" #include "defun.h" #include "error.h" #include "errwarn.h" #include "interpreter-private.h" #include "interpreter.h" -#include "pager.h" #include "ov.h" #include "ovl.h" +#include "pager.h" #include "unwind-prot.h" #include "utils.h" #include "variables.h"
--- a/libinterp/corefcn/qz.cc +++ b/libinterp/corefcn/qz.cc @@ -44,7 +44,7 @@ #endif #include "f77-fcn.h" -#include "lo-lapack-proto.h" +#include "lapack-proto.h" #include "qr.h" #include "quit.h"
--- a/libinterp/corefcn/rand.cc +++ b/libinterp/corefcn/rand.cc @@ -31,7 +31,7 @@ #include <string> #include "f77-fcn.h" -#include "lo-mappers.h" +#include "mappers.h" #include "oct-rand.h" #include "quit.h"
--- a/libinterp/corefcn/regexp.cc +++ b/libinterp/corefcn/regexp.cc @@ -32,7 +32,7 @@ #include "oct-locbuf.h" #include "quit.h" -#include "lo-regexp.h" +#include "oct-regexp.h" #include "str-vec.h" #include "defun.h" @@ -280,7 +280,7 @@ // Both dollar sign (for capture buffer) and backslash are // passed through with their escape backslash. The processing // for these must occur during the actual replacement operation - // in lo-regexp.cc. + // in oct-regexp.cc. case '$': // pass dollar sign through with escape retval[i] = '\\'; retval[++i] = '$'; break;
--- a/libinterp/corefcn/sqrtm.cc +++ b/libinterp/corefcn/sqrtm.cc @@ -27,10 +27,10 @@ # include "config.h" #endif +#include "lo-ieee.h" +#include "mappers.h" +#include "oct-norm.h" #include "schur.h" -#include "lo-ieee.h" -#include "lo-mappers.h" -#include "oct-norm.h" #include "defun.h" #include "error.h"
--- a/libinterp/corefcn/stack-frame.cc +++ b/libinterp/corefcn/stack-frame.cc @@ -29,8 +29,8 @@ #include <iostream> -#include "lo-regexp.h" -#include "lo-sysdep.h" +#include "oct-regexp.h" +#include "oct-sysdep.h" #include "str-vec.h" #include "defun.h"
--- a/libinterp/corefcn/symscope.h +++ b/libinterp/corefcn/symscope.h @@ -36,8 +36,8 @@ #include <string> #include "glob-match.h" -#include "lo-regexp.h" #include "oct-refcount.h" +#include "oct-regexp.h" class tree_argument_list; class octave_user_code;
--- a/libinterp/corefcn/symtab.h +++ b/libinterp/corefcn/symtab.h @@ -35,8 +35,8 @@ #include <string> #include "glob-match.h" -#include "lo-regexp.h" #include "oct-refcount.h" +#include "oct-regexp.h" class tree_argument_list; class octave_user_function;
--- a/libinterp/corefcn/sysdep.cc +++ b/libinterp/corefcn/sysdep.cc @@ -63,10 +63,10 @@ #include "cmd-edit.h" #include "file-ops.h" -#include "lo-mappers.h" -#include "lo-sysinfo.h" #include "mach-info.h" +#include "mappers.h" #include "oct-env.h" +#include "oct-sysinfo.h" #include "uniconv-wrappers.h" #include "unistd-wrappers.h"
--- a/libinterp/corefcn/sysdep.h +++ b/libinterp/corefcn/sysdep.h @@ -33,7 +33,7 @@ #include <string> #include "lo-ieee.h" -#include "lo-sysdep.h" +#include "oct-sysdep.h" OCTAVE_BEGIN_NAMESPACE(octave)
--- a/libinterp/corefcn/toplev.cc +++ b/libinterp/corefcn/toplev.cc @@ -41,7 +41,7 @@ #include "async-system-wrapper.h" #include "child-list.h" -#include "lo-error.h" +#include "oct-error.h" #include "oct-fftw.h" #include "oct-locbuf.h" #include "oct-syscalls.h" @@ -592,6 +592,9 @@ config.assign ("words_little_endian", octave_value (mach_info::words_little_endian ())); + config.assign ("nan_with_payload", + octave_value (mach_info::nan_with_payload ())); + config.assign ("build_environment", octave_value (build_env)); config.assign ("build_features", octave_value (build_features));
--- a/libinterp/corefcn/url-handle-manager.h +++ b/libinterp/corefcn/url-handle-manager.h @@ -35,7 +35,7 @@ #include <map> #include <set> -#include "lo-mappers.h" +#include "mappers.h" #include "oct-handle.h" #include "url-transfer.h"
--- a/libinterp/corefcn/urlwrite.cc +++ b/libinterp/corefcn/urlwrite.cc @@ -34,10 +34,10 @@ #include "dir-ops.h" #include "file-ops.h" #include "file-stat.h" -#include "lo-sysdep.h" +#include "glob-match.h" #include "oct-env.h" #include "oct-handle.h" -#include "glob-match.h" +#include "oct-sysdep.h" #include "url-transfer.h" #include "defun.h"
--- a/libinterp/corefcn/utils.cc +++ b/libinterp/corefcn/utils.cc @@ -38,14 +38,14 @@ #include "dir-ops.h" #include "file-ops.h" #include "file-stat.h" -#include "lo-mappers.h" -#include "lo-sysdep.h" #include "lo-utils.h" +#include "mappers.h" #include "nanosleep-wrapper.h" #include "oct-cmplx.h" #include "oct-env.h" #include "oct-locbuf.h" #include "oct-string.h" +#include "oct-sysdep.h" #include "pathsearch.h" #include "quit.h" #include "str-vec.h"
--- a/libinterp/corefcn/variables.cc +++ b/libinterp/corefcn/variables.cc @@ -39,7 +39,7 @@ #include "oct-env.h" #include "file-ops.h" #include "glob-match.h" -#include "lo-regexp.h" +#include "oct-regexp.h" #include "str-vec.h" #include "Cell.h"
--- a/libinterp/dldfcn/gzip.cc +++ b/libinterp/dldfcn/gzip.cc @@ -64,8 +64,8 @@ #include "file-ops.h" #include "file-stat.h" #include "glob-match.h" -#include "lo-sysdep.h" #include "oct-env.h" +#include "oct-sysdep.h" #include "str-vec.h" #include "Cell.h"
--- a/libinterp/mk-build-env-features.sh +++ b/libinterp/mk-build-env-features.sh @@ -44,7 +44,6 @@ #include "ov.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(build_env) octave_scalar_map
--- a/libinterp/octave-value/ov-base-scalar.h +++ b/libinterp/octave-value/ov-base-scalar.h @@ -33,10 +33,10 @@ #include <iosfwd> #include <string> -#include "lo-mappers.h" +#include "MatrixType.h" #include "lo-utils.h" +#include "mappers.h" #include "str-vec.h" -#include "MatrixType.h" #include "ov-base.h" #include "ov-typeinfo.h"
--- a/libinterp/octave-value/ov-base.cc +++ b/libinterp/octave-value/ov-base.cc @@ -32,7 +32,7 @@ #include <ostream> #include "lo-ieee.h" -#include "lo-mappers.h" +#include "mappers.h" #include "defun.h" #include "errwarn.h"
--- a/libinterp/octave-value/ov-class.cc +++ b/libinterp/octave-value/ov-class.cc @@ -33,8 +33,8 @@ #include "Array-util.h" #include "byte-swap.h" +#include "mappers.h" #include "oct-locbuf.h" -#include "lo-mappers.h" #include "Cell.h" #include "defun.h"
--- a/libinterp/octave-value/ov-complex.cc +++ b/libinterp/octave-value/ov-complex.cc @@ -32,8 +32,8 @@ #include <sstream> #include "lo-ieee.h" -#include "lo-specfun.h" -#include "lo-mappers.h" +#include "mappers.h" +#include "oct-specfun.h" #include "mxarray.h" #include "ovl.h"
--- a/libinterp/octave-value/ov-cx-mat.cc +++ b/libinterp/octave-value/ov-cx-mat.cc @@ -37,11 +37,11 @@ #include "data-conv.h" #include "lo-ieee.h" -#include "lo-specfun.h" -#include "lo-mappers.h" +#include "mach-info.h" +#include "mappers.h" #include "mx-base.h" -#include "mach-info.h" #include "oct-locbuf.h" +#include "oct-specfun.h" #include "errwarn.h" #include "mxarray.h" @@ -244,7 +244,12 @@ octave_idx_type nel = numel (); for (octave_idx_type i = 0; i < nel; i++) - retval.elem (i) = static_cast<char> (std::real (m_matrix.elem (i))); +#if ! defined (HAVE_DOUBLE_QNAN_CHAR_0) + if (octave::math::isnan (std::real (m_matrix.elem (i)))) + retval.elem (i) = 0.0; + else +#endif + retval.elem (i) = static_cast<char> (std::real (m_matrix.elem (i))); } return retval;
--- a/libinterp/octave-value/ov-cx-sparse.cc +++ b/libinterp/octave-value/ov-cx-sparse.cc @@ -31,9 +31,9 @@ #include <ostream> #include <vector> -#include "lo-specfun.h" -#include "lo-mappers.h" +#include "mappers.h" #include "oct-locbuf.h" +#include "oct-specfun.h" #include "mxarray.h" #include "errwarn.h"
--- a/libinterp/octave-value/ov-float.cc +++ b/libinterp/octave-value/ov-float.cc @@ -34,8 +34,8 @@ #include "data-conv.h" #include "mach-info.h" -#include "lo-specfun.h" -#include "lo-mappers.h" +#include "mappers.h" +#include "oct-specfun.h" #include "defun.h" #include "errwarn.h"
--- a/libinterp/octave-value/ov-float.h +++ b/libinterp/octave-value/ov-float.h @@ -33,7 +33,7 @@ #include <iosfwd> #include <string> -#include "lo-mappers.h" +#include "mappers.h" #include "lo-utils.h" #include "mx-base.h" #include "str-vec.h" @@ -195,7 +195,12 @@ char_array_value (bool = false) const { charNDArray retval (dim_vector (1, 1)); - retval(0) = static_cast<char> (scalar); +#if ! defined (HAVE_FLOAT_QNAN_CHAR_0) + if (octave::math::isnan (scalar)) + retval(0) = 0.0; + else +#endif + retval(0) = static_cast<char> (scalar); return retval; }
--- a/libinterp/octave-value/ov-flt-complex.cc +++ b/libinterp/octave-value/ov-flt-complex.cc @@ -31,8 +31,8 @@ #include <ostream> #include "lo-ieee.h" -#include "lo-specfun.h" -#include "lo-mappers.h" +#include "mappers.h" +#include "oct-specfun.h" #include "mxarray.h" #include "ovl.h"
--- a/libinterp/octave-value/ov-flt-cx-mat.cc +++ b/libinterp/octave-value/ov-flt-cx-mat.cc @@ -37,11 +37,11 @@ #include "data-conv.h" #include "lo-ieee.h" -#include "lo-specfun.h" -#include "lo-mappers.h" +#include "mappers.h" +#include "mach-info.h" #include "mx-base.h" -#include "mach-info.h" #include "oct-locbuf.h" +#include "oct-specfun.h" #include "errwarn.h" #include "mxarray.h" @@ -218,7 +218,12 @@ octave_idx_type nel = numel (); for (octave_idx_type i = 0; i < nel; i++) - retval.elem (i) = static_cast<char> (std::real (m_matrix.elem (i))); +#if ! defined (HAVE_FLOAT_QNAN_CHAR_0) + if (octave::math::isnan (std::real (m_matrix.elem (i)))) + retval.elem (i) = 0.0; + else +#endif + retval.elem (i) = static_cast<char> (std::real (m_matrix.elem (i))); } return retval;
--- a/libinterp/octave-value/ov-flt-re-mat.cc +++ b/libinterp/octave-value/ov-flt-re-mat.cc @@ -46,13 +46,13 @@ #include "data-conv.h" #include "lo-ieee.h" +#include "mappers.h" #include "lo-utils.h" -#include "lo-specfun.h" -#include "lo-mappers.h" #include "mach-info.h" #include "mx-base.h" +#include "oct-locbuf.h" +#include "oct-specfun.h" #include "quit.h" -#include "oct-locbuf.h" #include "defun.h" #include "errwarn.h" @@ -215,7 +215,12 @@ octave_idx_type nel = numel (); for (octave_idx_type i = 0; i < nel; i++) - retval.elem (i) = static_cast<char> (m_matrix.elem (i)); +#if ! defined (HAVE_FLOAT_QNAN_CHAR_0) + if (octave::math::isnan (m_matrix.elem (i))) + retval.elem (i) = 0.0; + else +#endif + retval.elem (i) = static_cast<char> (m_matrix.elem (i)); return retval; }
--- a/libinterp/octave-value/ov-java.cc +++ b/libinterp/octave-value/ov-java.cc @@ -38,30 +38,30 @@ #include <algorithm> #include <array> +#include <clocale> #include <fstream> #include <map> #include <string> #include <vector> -#include <clocale> +#include "cmd-edit.h" +#include "file-ops.h" +#include "file-stat.h" +#include "fpucw-wrappers.h" +#include "oct-env.h" +#include "oct-shlib.h" +#include "oct-sysdep.h" #include "Cell.h" #include "builtin-defun-decls.h" -#include "cmd-edit.h" #include "defaults.h" #include "defun.h" #include "error.h" #include "errwarn.h" -#include "file-ops.h" -#include "file-stat.h" -#include "fpucw-wrappers.h" +#include "interpreter-private.h" #include "interpreter.h" -#include "interpreter-private.h" #include "load-path.h" -#include "lo-sysdep.h" -#include "oct-env.h" #include "oct-process.h" -#include "oct-shlib.h" #include "ov-java.h" #include "variables.h"
--- a/libinterp/octave-value/ov-legacy-range.h +++ b/libinterp/octave-value/ov-legacy-range.h @@ -34,7 +34,7 @@ #include <memory> #include <string> -#include "lo-mappers.h" +#include "mappers.h" #include "lo-utils.h" #include "mx-base.h"
--- a/libinterp/octave-value/ov-magic-int.cc +++ b/libinterp/octave-value/ov-magic-int.cc @@ -33,9 +33,9 @@ #include "oct-inttypes-fwd.h" #include "data-conv.h" +#include "mappers.h" #include "mach-info.h" -#include "lo-specfun.h" -#include "lo-mappers.h" +#include "oct-specfun.h" #include "defun.h" #include "errwarn.h"
--- a/libinterp/octave-value/ov-range.h +++ b/libinterp/octave-value/ov-range.h @@ -37,7 +37,7 @@ #include "Array.h" #include "Range.h" -#include "lo-mappers.h" +#include "mappers.h" #include "lo-utils.h" #include "mx-base.h" #include "str-vec.h"
--- a/libinterp/octave-value/ov-re-mat.cc +++ b/libinterp/octave-value/ov-re-mat.cc @@ -35,24 +35,24 @@ #include "dNDArray.h" #include "fNDArray.h" -#include "int8NDArray.h" #include "int16NDArray.h" #include "int32NDArray.h" #include "int64NDArray.h" -#include "uint8NDArray.h" +#include "int8NDArray.h" #include "uint16NDArray.h" #include "uint32NDArray.h" #include "uint64NDArray.h" +#include "uint8NDArray.h" #include "data-conv.h" #include "lo-ieee.h" #include "lo-utils.h" -#include "lo-specfun.h" -#include "lo-mappers.h" #include "mach-info.h" +#include "mappers.h" #include "mx-base.h" +#include "oct-locbuf.h" +#include "oct-specfun.h" #include "quit.h" -#include "oct-locbuf.h" #include "defun.h" #include "errwarn.h" @@ -225,7 +225,12 @@ octave_idx_type nel = numel (); for (octave_idx_type i = 0; i < nel; i++) - retval.elem (i) = static_cast<char> (m_matrix.elem (i)); +#if ! defined (HAVE_DOUBLE_QNAN_CHAR_0) + if (octave::math::isnan (m_matrix.elem (i))) + retval.elem (i) = 0.0; + else +#endif + retval.elem (i) = static_cast<char> (m_matrix.elem (i)); return retval; }
--- a/libinterp/octave-value/ov-re-sparse.cc +++ b/libinterp/octave-value/ov-re-sparse.cc @@ -32,9 +32,9 @@ #include <ostream> #include <vector> -#include "lo-specfun.h" -#include "lo-mappers.h" +#include "mappers.h" #include "oct-locbuf.h" +#include "oct-specfun.h" #include "mxarray.h" #include "errwarn.h" @@ -119,7 +119,12 @@ for (octave_idx_type j = 0; j < nc; j++) for (octave_idx_type i = matrix.cidx (j); i < matrix.cidx (j+1); i++) - retval(matrix.ridx (i) + nr * j) = static_cast<char> (matrix.data (i)); +#if ! defined (HAVE_DOUBLE_QNAN_CHAR_0) + if (octave::math::isnan (matrix.data (i))) + retval(matrix.ridx (i) + nr * j) = 0.0; + else +#endif + retval(matrix.ridx (i) + nr * j) = static_cast<char> (matrix.data (i)); return retval; }
--- a/libinterp/octave-value/ov-scalar.cc +++ b/libinterp/octave-value/ov-scalar.cc @@ -34,8 +34,8 @@ #include "data-conv.h" #include "mach-info.h" -#include "lo-specfun.h" -#include "lo-mappers.h" +#include "mappers.h" +#include "oct-specfun.h" #include "defun.h" #include "errwarn.h"
--- a/libinterp/octave-value/ov-scalar.h +++ b/libinterp/octave-value/ov-scalar.h @@ -33,8 +33,8 @@ #include <iosfwd> #include <string> -#include "lo-mappers.h" #include "lo-utils.h" +#include "mappers.h" #include "mx-base.h" #include "str-vec.h" @@ -198,7 +198,12 @@ char_array_value (bool = false) const { charNDArray retval (dim_vector (1, 1)); - retval(0) = static_cast<char> (scalar); +#if ! defined (HAVE_DOUBLE_QNAN_CHAR_0) + if (octave::math::isnan (scalar)) + retval(0) = 0.0; + else +#endif + retval(0) = static_cast<char> (scalar); return retval; }
--- a/libinterp/octave.cc +++ b/libinterp/octave.cc @@ -34,8 +34,8 @@ #include "file-ops.h" #include "getopt-wrapper.h" -#include "lo-error.h" #include "oct-env.h" +#include "oct-error.h" #include "str-vec.h" #include "Cell.h"
--- a/libinterp/parse-tree/lex.ll +++ b/libinterp/parse-tree/lex.ll @@ -100,7 +100,7 @@ #include <stack> #include "cmd-edit.h" -#include "lo-mappers.h" +#include "mappers.h" #include "quit.h" #include "unistd-wrappers.h"
--- a/libinterp/parse-tree/oct-parse.yy +++ b/libinterp/parse-tree/oct-parse.yy @@ -62,7 +62,7 @@ #include "interpreter.h" #include "lex.h" #include "load-path.h" -#include "lo-sysdep.h" +#include "oct-sysdep.h" #include "oct-hist.h" #include "oct-map.h" #include "ov-classdef.h"
--- a/liboctave/array/Array-C.cc +++ b/liboctave/array/Array-C.cc @@ -29,8 +29,8 @@ // Instantiate Arrays of Complex values. +#include "mappers.h" #include "oct-cmplx.h" -#include "lo-mappers.h" #define OCTAVE_EXTERN_TEMPLATE_ARRAY #include "Array-oct.h"
--- a/liboctave/array/Array-base.cc +++ b/liboctave/array/Array-base.cc @@ -33,10 +33,10 @@ #include <ostream> +#include "Array-oct.h" #include "Array-util.h" -#include "Array-oct.h" -#include "lo-error.h" -#include "lo-mappers.h" +#include "mappers.h" +#include "oct-error.h" #include "oct-locbuf.h" // One dimensional array class. Handles the reference counting for
--- a/liboctave/array/Array-base.h +++ b/liboctave/array/Array-base.h @@ -37,8 +37,8 @@ #include "Array-fwd.h" #include "dim-vector.h" #include "idx-vector.h" -#include "lo-error.h" -#include "lo-traits.h" +#include "oct-error.h" +#include "oct-traits.h" #include "lo-utils.h" #include "oct-refcount.h" #include "oct-sort.h"
--- a/liboctave/array/Array-d.cc +++ b/liboctave/array/Array-d.cc @@ -29,7 +29,7 @@ // Instantiate Arrays of double values. -#include "lo-mappers.h" +#include "mappers.h" #define OCTAVE_EXTERN_TEMPLATE_ARRAY #include "Array-oct.h"
--- a/liboctave/array/Array-f.cc +++ b/liboctave/array/Array-f.cc @@ -29,7 +29,7 @@ // Instantiate Arrays of float values. -#include "lo-mappers.h" +#include "mappers.h" #define OCTAVE_EXTERN_TEMPLATE_ARRAY #include "Array-oct.h"
--- a/liboctave/array/Array-fC.cc +++ b/liboctave/array/Array-fC.cc @@ -29,8 +29,8 @@ // Instantiate Arrays of FloatComplex values. +#include "mappers.h" #include "oct-cmplx.h" -#include "lo-mappers.h" #define OCTAVE_EXTERN_TEMPLATE_ARRAY #include "Array-oct.h"
--- a/liboctave/array/Array-util.cc +++ b/liboctave/array/Array-util.cc @@ -28,7 +28,7 @@ #endif #include "Array-util.h" -#include "lo-error.h" +#include "oct-error.h" #include "oct-locbuf.h" bool
--- a/liboctave/array/CColVector.cc +++ b/liboctave/array/CColVector.cc @@ -31,11 +31,11 @@ #include <ostream> #include "Array-util.h" -#include "lo-blas-proto.h" -#include "lo-error.h" +#include "blas-proto.h" #include "mx-base.h" #include "mx-inlines.cc" #include "oct-cmplx.h" +#include "oct-error.h" // Complex Column Vector class
--- a/liboctave/array/CDiagMatrix.cc +++ b/liboctave/array/CDiagMatrix.cc @@ -30,11 +30,11 @@ #include <ostream> #include "Array-util.h" -#include "lo-error.h" #include "lo-ieee.h" #include "mx-base.h" #include "mx-inlines.cc" #include "oct-cmplx.h" +#include "oct-error.h" // Complex Diagonal Matrix class
--- a/liboctave/array/CMatrix.cc +++ b/liboctave/array/CMatrix.cc @@ -40,24 +40,24 @@ #include "CNDArray.h" #include "CRowVector.h" #include "DET.h" +#include "blas-proto.h" #include "boolMatrix.h" #include "chMatrix.h" #include "chol.h" #include "dDiagMatrix.h" #include "dMatrix.h" #include "dRowVector.h" -#include "lo-blas-proto.h" -#include "lo-error.h" +#include "lapack-proto.h" #include "lo-ieee.h" -#include "lo-lapack-proto.h" -#include "lo-mappers.h" #include "lo-utils.h" +#include "mappers.h" #include "mx-cm-dm.h" #include "mx-cm-s.h" #include "mx-dm-cm.h" #include "mx-inlines.cc" #include "mx-op-defs.h" #include "oct-cmplx.h" +#include "oct-error.h" #include "oct-fftw.h" #include "oct-locbuf.h" #include "oct-norm.h"
--- a/liboctave/array/CNDArray.cc +++ b/liboctave/array/CNDArray.cc @@ -35,7 +35,7 @@ #include "CNDArray.h" #include "f77-fcn.h" #include "lo-ieee.h" -#include "lo-mappers.h" +#include "mappers.h" #include "mx-base.h" #include "mx-cnda-s.h" #include "mx-op-defs.h"
--- a/liboctave/array/CRowVector.cc +++ b/liboctave/array/CRowVector.cc @@ -32,11 +32,11 @@ #include <type_traits> #include "Array-util.h" -#include "lo-blas-proto.h" -#include "lo-error.h" +#include "blas-proto.h" #include "mx-base.h" #include "mx-inlines.cc" #include "oct-cmplx.h" +#include "oct-error.h" // Complex Row Vector class
--- a/liboctave/array/CSparse.cc +++ b/liboctave/array/CSparse.cc @@ -33,20 +33,20 @@ #include <limits> #include <ostream> +#include "dRowVector.h" +#include "f77-fcn.h" +#include "lapack-proto.h" +#include "lo-ieee.h" +#include "mappers.h" +#include "mx-cm-s.h" +#include "mx-cs-m.h" +#include "mx-fcm-fs.h" +#include "mx-fs-fcm.h" +#include "mx-m-cs.h" +#include "mx-s-cm.h" +#include "oct-error.h" +#include "oct-locbuf.h" #include "quit.h" -#include "lo-error.h" -#include "lo-ieee.h" -#include "lo-mappers.h" -#include "f77-fcn.h" -#include "dRowVector.h" -#include "lo-lapack-proto.h" -#include "mx-m-cs.h" -#include "mx-cs-m.h" -#include "mx-cm-s.h" -#include "mx-fcm-fs.h" -#include "mx-s-cm.h" -#include "mx-fs-fcm.h" -#include "oct-locbuf.h" #include "dDiagMatrix.h" #include "CDiagMatrix.h"
--- a/liboctave/array/DiagArray2.cc +++ b/liboctave/array/DiagArray2.cc @@ -31,7 +31,7 @@ #include "DiagArray2.h" -#include "lo-error.h" +#include "oct-error.h" template <typename T> DiagArray2<T>::DiagArray2 (const Array<T>& a, octave_idx_type r,
--- a/liboctave/array/MArray.cc +++ b/liboctave/array/MArray.cc @@ -29,7 +29,7 @@ #include "MArray.h" #include "Array-util.h" -#include "lo-error.h" +#include "oct-error.h" template <typename T> class _idxadds_helper
--- a/liboctave/array/MDiagArray2.cc +++ b/liboctave/array/MDiagArray2.cc @@ -29,7 +29,7 @@ #include "MDiagArray2.h" #include "Array-util.h" -#include "lo-error.h" +#include "oct-error.h" template <typename T> bool
--- a/liboctave/array/MSparse.h +++ b/liboctave/array/MSparse.h @@ -31,7 +31,7 @@ #include "Array-util.h" #include "MArray.h" #include "Sparse.h" -#include "lo-error.h" +#include "oct-error.h" #include "quit.h"
--- a/liboctave/array/Range.cc +++ b/liboctave/array/Range.cc @@ -35,9 +35,9 @@ #include "Array-util.h" #include "Range.h" -#include "lo-error.h" -#include "lo-mappers.h" #include "lo-utils.h" +#include "mappers.h" +#include "oct-error.h" OCTAVE_BEGIN_NAMESPACE(octave)
--- a/liboctave/array/Range.h +++ b/liboctave/array/Range.h @@ -34,7 +34,7 @@ #include "Array-fwd.h" #include "dMatrix.h" #include "dim-vector.h" -#include "lo-error.h" +#include "oct-error.h" #include "oct-sort.h" #include "range-fwd.h"
--- a/liboctave/array/Sparse-C.cc +++ b/liboctave/array/Sparse-C.cc @@ -29,12 +29,12 @@ // Instantiate Sparse matrix of complex values. +#include "Array-oct.h" +#include "Sparse.cc" +#include "Sparse.h" +#include "lo-ieee.h" +#include "mappers.h" #include "oct-cmplx.h" -#include "lo-mappers.h" -#include "lo-ieee.h" -#include "Array-oct.h" -#include "Sparse.h" -#include "Sparse.cc" static double
--- a/liboctave/array/Sparse-d.cc +++ b/liboctave/array/Sparse-d.cc @@ -29,10 +29,10 @@ // Instantiate Sparse matrix of double values. -#include "lo-mappers.h" #include "Array-oct.h" +#include "Sparse.cc" #include "Sparse.h" -#include "Sparse.cc" +#include "mappers.h" template <> OCTAVE_API
--- a/liboctave/array/Sparse.cc +++ b/liboctave/array/Sparse.cc @@ -36,18 +36,18 @@ #include <vector> #include "Array-oct.h" +#include "Array-util.h" #include "MArray.h" -#include "Array-util.h" #include "Range.h" #include "idx-vector.h" -#include "lo-error.h" +#include "oct-error.h" +#include "oct-locbuf.h" #include "quit.h" -#include "oct-locbuf.h" #include "Sparse.h" +#include "mx-inlines.cc" +#include "oct-spparms.h" #include "sparse-util.h" -#include "oct-spparms.h" -#include "mx-inlines.cc" #include "PermMatrix.h"
--- a/liboctave/array/boolMatrix.cc +++ b/liboctave/array/boolMatrix.cc @@ -31,10 +31,10 @@ #include "Array-util.h" #include "boolMatrix.h" -#include "lo-error.h" -#include "str-vec.h" #include "mx-inlines.cc" #include "mx-op-defs.h" +#include "oct-error.h" +#include "str-vec.h" // boolMatrix class.
--- a/liboctave/array/boolSparse.cc +++ b/liboctave/array/boolSparse.cc @@ -31,9 +31,9 @@ #include <ostream> #include <vector> +#include "lo-ieee.h" +#include "mappers.h" #include "quit.h" -#include "lo-ieee.h" -#include "lo-mappers.h" #include "boolSparse.h" #include "dSparse.h"
--- a/liboctave/array/chMatrix.cc +++ b/liboctave/array/chMatrix.cc @@ -32,11 +32,11 @@ #include <ostream> #include <string> -#include "lo-error.h" -#include "str-vec.h" #include "mx-base.h" #include "mx-inlines.cc" #include "mx-op-defs.h" +#include "oct-error.h" +#include "str-vec.h" // charMatrix class.
--- a/liboctave/array/chNDArray.cc +++ b/liboctave/array/chNDArray.cc @@ -31,9 +31,9 @@ #include "Array-util.h" #include "chNDArray.h" +#include "lo-ieee.h" +#include "mappers.h" #include "mx-base.h" -#include "lo-ieee.h" -#include "lo-mappers.h" #include "mx-op-defs.h" #include "str-vec.h"
--- a/liboctave/array/dColVector.cc +++ b/liboctave/array/dColVector.cc @@ -31,11 +31,11 @@ #include <ostream> #include "Array-util.h" -#include "lo-blas-proto.h" -#include "lo-error.h" +#include "blas-proto.h" #include "mx-base.h" #include "mx-inlines.cc" #include "oct-cmplx.h" +#include "oct-error.h" // Column Vector class.
--- a/liboctave/array/dDiagMatrix.cc +++ b/liboctave/array/dDiagMatrix.cc @@ -30,10 +30,10 @@ #include <ostream> #include "Array-util.h" -#include "lo-error.h" #include "mx-base.h" #include "mx-inlines.cc" #include "oct-cmplx.h" +#include "oct-error.h" // Diagonal Matrix class.
--- a/liboctave/array/dMatrix.cc +++ b/liboctave/array/dMatrix.cc @@ -38,6 +38,7 @@ #include "CMatrix.h" #include "DET.h" #include "PermMatrix.h" +#include "blas-proto.h" #include "boolMatrix.h" #include "byte-swap.h" #include "chMatrix.h" @@ -46,17 +47,16 @@ #include "dDiagMatrix.h" #include "dMatrix.h" #include "dRowVector.h" -#include "lo-blas-proto.h" -#include "lo-error.h" +#include "lapack-proto.h" #include "lo-ieee.h" -#include "lo-lapack-proto.h" -#include "lo-mappers.h" #include "lo-utils.h" +#include "mappers.h" #include "mx-dm-m.h" #include "mx-inlines.cc" #include "mx-m-dm.h" #include "mx-op-defs.h" #include "oct-cmplx.h" +#include "oct-error.h" #include "oct-fftw.h" #include "oct-locbuf.h" #include "oct-norm.h"
--- a/liboctave/array/dNDArray.cc +++ b/liboctave/array/dNDArray.cc @@ -34,11 +34,11 @@ #include "Array-util.h" #include "dNDArray.h" #include "f77-fcn.h" -#include "lo-error.h" #include "lo-ieee.h" -#include "lo-mappers.h" +#include "mappers.h" #include "mx-base.h" #include "mx-op-defs.h" +#include "oct-error.h" #include "oct-fftw.h" #include "oct-locbuf.h"
--- a/liboctave/array/dRowVector.cc +++ b/liboctave/array/dRowVector.cc @@ -32,11 +32,11 @@ #include <type_traits> #include "Array-util.h" -#include "lo-blas-proto.h" -#include "lo-error.h" +#include "blas-proto.h" #include "mx-base.h" #include "mx-inlines.cc" #include "oct-cmplx.h" +#include "oct-error.h" // Row Vector class.
--- a/liboctave/array/dSparse.cc +++ b/liboctave/array/dSparse.cc @@ -32,12 +32,12 @@ #include <limits> #include <ostream> +#include "dRowVector.h" +#include "lapack-proto.h" +#include "lo-ieee.h" +#include "mappers.h" +#include "oct-locbuf.h" #include "quit.h" -#include "lo-ieee.h" -#include "lo-lapack-proto.h" -#include "lo-mappers.h" -#include "dRowVector.h" -#include "oct-locbuf.h" #include "dDiagMatrix.h" #include "CSparse.h"
--- a/liboctave/array/fCColVector.cc +++ b/liboctave/array/fCColVector.cc @@ -31,11 +31,11 @@ #include <ostream> #include "Array-util.h" -#include "lo-blas-proto.h" -#include "lo-error.h" +#include "blas-proto.h" #include "mx-base.h" #include "mx-inlines.cc" #include "oct-cmplx.h" +#include "oct-error.h" // FloatComplex Column Vector class
--- a/liboctave/array/fCDiagMatrix.cc +++ b/liboctave/array/fCDiagMatrix.cc @@ -30,11 +30,11 @@ #include <ostream> #include "Array-util.h" -#include "lo-error.h" #include "lo-ieee.h" #include "mx-base.h" #include "mx-inlines.cc" #include "oct-cmplx.h" +#include "oct-error.h" // FloatComplex Diagonal Matrix class
--- a/liboctave/array/fCMatrix.cc +++ b/liboctave/array/fCMatrix.cc @@ -36,6 +36,7 @@ #include "Array-util.h" #include "DET.h" +#include "blas-proto.h" #include "boolMatrix.h" #include "chMatrix.h" #include "chol.h" @@ -44,18 +45,17 @@ #include "fCMatrix.h" #include "fCNDArray.h" #include "fCRowVector.h" -#include "lo-blas-proto.h" -#include "lo-error.h" +#include "lapack-proto.h" #include "lo-ieee.h" -#include "lo-lapack-proto.h" -#include "lo-mappers.h" #include "lo-utils.h" +#include "mappers.h" #include "mx-fcm-fdm.h" #include "mx-fcm-fs.h" #include "mx-fdm-fcm.h" #include "mx-inlines.cc" #include "mx-op-defs.h" #include "oct-cmplx.h" +#include "oct-error.h" #include "oct-fftw.h" #include "oct-locbuf.h" #include "oct-norm.h"
--- a/liboctave/array/fCNDArray.cc +++ b/liboctave/array/fCNDArray.cc @@ -35,10 +35,10 @@ #include "f77-fcn.h" #include "fCNDArray.h" #include "lo-ieee.h" -#include "lo-mappers.h" +#include "mappers.h" #include "mx-base.h" +#include "mx-fcnda-fs.h" #include "mx-op-defs.h" -#include "mx-fcnda-fs.h" #include "oct-fftw.h" #include "oct-locbuf.h"
--- a/liboctave/array/fCRowVector.cc +++ b/liboctave/array/fCRowVector.cc @@ -32,11 +32,11 @@ #include <type_traits> #include "Array-util.h" -#include "lo-blas-proto.h" -#include "lo-error.h" +#include "blas-proto.h" #include "mx-base.h" #include "mx-inlines.cc" #include "oct-cmplx.h" +#include "oct-error.h" // FloatComplex Row Vector class
--- a/liboctave/array/fColVector.cc +++ b/liboctave/array/fColVector.cc @@ -31,11 +31,11 @@ #include <ostream> #include "Array-util.h" -#include "lo-blas-proto.h" -#include "lo-error.h" +#include "blas-proto.h" #include "mx-base.h" #include "mx-inlines.cc" #include "oct-cmplx.h" +#include "oct-error.h" // Column Vector class.
--- a/liboctave/array/fDiagMatrix.cc +++ b/liboctave/array/fDiagMatrix.cc @@ -30,10 +30,10 @@ #include <ostream> #include "Array-util.h" -#include "lo-error.h" #include "mx-base.h" #include "mx-inlines.cc" #include "oct-cmplx.h" +#include "oct-error.h" // Diagonal Matrix class.
--- a/liboctave/array/fMatrix.cc +++ b/liboctave/array/fMatrix.cc @@ -36,6 +36,7 @@ #include "Array-util.h" #include "DET.h" #include "PermMatrix.h" +#include "blas-proto.h" #include "boolMatrix.h" #include "byte-swap.h" #include "chMatrix.h" @@ -48,17 +49,16 @@ #include "fMatrix.h" #include "fNDArray.h" #include "fRowVector.h" -#include "lo-blas-proto.h" -#include "lo-error.h" +#include "lapack-proto.h" #include "lo-ieee.h" -#include "lo-lapack-proto.h" -#include "lo-mappers.h" #include "lo-utils.h" +#include "mappers.h" #include "mx-fdm-fm.h" #include "mx-fm-fdm.h" #include "mx-inlines.cc" #include "mx-op-defs.h" #include "oct-cmplx.h" +#include "oct-error.h" #include "oct-fftw.h" #include "oct-locbuf.h" #include "oct-norm.h"
--- a/liboctave/array/fNDArray.cc +++ b/liboctave/array/fNDArray.cc @@ -34,11 +34,11 @@ #include "Array-util.h" #include "f77-fcn.h" #include "fNDArray.h" -#include "lo-error.h" #include "lo-ieee.h" -#include "lo-mappers.h" +#include "mappers.h" #include "mx-base.h" #include "mx-op-defs.h" +#include "oct-error.h" #include "oct-fftw.h" #include "oct-locbuf.h"
--- a/liboctave/array/fRowVector.cc +++ b/liboctave/array/fRowVector.cc @@ -32,11 +32,11 @@ #include <type_traits> #include "Array-util.h" -#include "lo-blas-proto.h" -#include "lo-error.h" +#include "blas-proto.h" #include "mx-base.h" #include "mx-inlines.cc" #include "oct-cmplx.h" +#include "oct-error.h" // Row Vector class.
--- a/liboctave/array/idx-vector.cc +++ b/liboctave/array/idx-vector.cc @@ -32,15 +32,15 @@ #include <ostream> -#include "idx-vector.h" #include "Array-oct.h" #include "Array-util.h" +#include "Range.h" #include "Sparse.h" -#include "Range.h" +#include "idx-vector.h" +#include "mappers.h" +#include "oct-error.h" #include "oct-locbuf.h" -#include "lo-error.h" -#include "lo-mappers.h" OCTAVE_BEGIN_NAMESPACE(octave)
--- a/liboctave/array/idx-vector.h +++ b/liboctave/array/idx-vector.h @@ -35,11 +35,11 @@ #include <memory> #include "Array-fwd.h" +#include "Sparse-fwd.h" #include "dim-vector.h" -#include "lo-error.h" +#include "oct-error.h" #include "oct-inttypes.h" #include "oct-refcount.h" -#include "Sparse-fwd.h" #include "range-fwd.h" OCTAVE_BEGIN_NAMESPACE(octave)
--- a/liboctave/external/blas-xtra/xerbla.cc +++ b/liboctave/external/blas-xtra/xerbla.cc @@ -29,8 +29,8 @@ #include <iostream> +#include "blas-proto.h" #include "f77-fcn.h" -#include "lo-blas-proto.h" typedef void (*xerbla_handler_fptr) (void);
--- a/liboctave/numeric/CollocWt.cc +++ b/liboctave/numeric/CollocWt.cc @@ -34,8 +34,8 @@ #include "Array-oct.h" #include "CollocWt.h" -#include "lo-error.h" -#include "lo-mappers.h" +#include "mappers.h" +#include "oct-error.h" // The following routines jcobi, dif, and dfopr are based on the code // found in Villadsen, J. and M. L. Michelsen, Solution of Differential
--- a/liboctave/numeric/DASPK.cc +++ b/liboctave/numeric/DASPK.cc @@ -33,7 +33,7 @@ #include "DASPK.h" #include "dMatrix.h" #include "f77-fcn.h" -#include "lo-error.h" +#include "oct-error.h" #include "quit.h" typedef F77_INT (*daspk_fcn_ptr) (const double&, const double *, const double *,
--- a/liboctave/numeric/DASRT.cc +++ b/liboctave/numeric/DASRT.cc @@ -32,7 +32,7 @@ #include "DASRT.h" #include "f77-fcn.h" -#include "lo-error.h" +#include "oct-error.h" #include "quit.h" typedef F77_INT (*dasrt_fcn_ptr) (const double&, const double *, const double *,
--- a/liboctave/numeric/DASSL.cc +++ b/liboctave/numeric/DASSL.cc @@ -33,7 +33,7 @@ #include "DASSL.h" #include "dMatrix.h" #include "f77-fcn.h" -#include "lo-error.h" +#include "oct-error.h" #include "quit.h" typedef F77_INT (*dassl_fcn_ptr) (const double&, const double *,
--- a/liboctave/numeric/DET.h +++ b/liboctave/numeric/DET.h @@ -30,7 +30,7 @@ #include <cmath> -#include "lo-mappers.h" +#include "mappers.h" #include "oct-cmplx.h" template <typename T>
--- a/liboctave/numeric/EIG.cc +++ b/liboctave/numeric/EIG.cc @@ -31,8 +31,8 @@ #include "EIG.h" #include "dColVector.h" #include "dMatrix.h" -#include "lo-error.h" -#include "lo-lapack-proto.h" +#include "lapack-proto.h" +#include "oct-error.h" octave_idx_type EIG::init (const Matrix& a, bool calc_rev, bool calc_lev, bool balance)
--- a/liboctave/numeric/LSODE.cc +++ b/liboctave/numeric/LSODE.cc @@ -32,7 +32,7 @@ #include "LSODE.h" #include "f77-fcn.h" -#include "lo-error.h" +#include "oct-error.h" #include "quit.h" typedef F77_INT (*lsode_fcn_ptr) (const F77_INT&, const double&, double *,
--- a/liboctave/numeric/Quad.cc +++ b/liboctave/numeric/Quad.cc @@ -30,7 +30,7 @@ #include "Array-oct.h" #include "Quad.h" #include "f77-fcn.h" -#include "lo-error.h" +#include "oct-error.h" #include "quit.h" static integrand_fcn user_fcn;
--- a/liboctave/numeric/aepbalance.cc +++ b/liboctave/numeric/aepbalance.cc @@ -34,8 +34,8 @@ #include "fCMatrix.h" #include "fColVector.h" #include "fMatrix.h" -#include "lo-error.h" -#include "lo-lapack-proto.h" +#include "lapack-proto.h" +#include "oct-error.h" OCTAVE_BEGIN_NAMESPACE(octave)
--- a/liboctave/numeric/aepbalance.h +++ b/liboctave/numeric/aepbalance.h @@ -31,7 +31,6 @@ #include <algorithm> OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <typename MT>
copy from liboctave/numeric/lo-amos-proto.h copy to liboctave/numeric/amos-proto.h --- a/liboctave/numeric/lo-amos-proto.h +++ b/liboctave/numeric/amos-proto.h @@ -23,8 +23,8 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_amos_proto_h) -#define octave_lo_amos_proto_h 1 +#if ! defined (octave_amos_proto_h) +#define octave_amos_proto_h 1 #include "octave-config.h"
copy from liboctave/numeric/lo-arpack-proto.h copy to liboctave/numeric/arpack-proto.h --- a/liboctave/numeric/lo-arpack-proto.h +++ b/liboctave/numeric/arpack-proto.h @@ -23,8 +23,8 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_arpack_proto_h) -#define octave_lo_arpack_proto_h 1 +#if ! defined (octave_arpack_proto_h) +#define octave_arpack_proto_h 1 #include "octave-config.h"
copy from liboctave/numeric/lo-blas-proto.h copy to liboctave/numeric/blas-proto.h --- a/liboctave/numeric/lo-blas-proto.h +++ b/liboctave/numeric/blas-proto.h @@ -23,8 +23,8 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_blas_proto_h) -#define octave_lo_blas_proto_h 1 +#if ! defined (octave_blas_proto_h) +#define octave_blas_proto_h 1 #include "octave-config.h"
--- a/liboctave/numeric/bsxfun-defs.cc +++ b/liboctave/numeric/bsxfun-defs.cc @@ -32,8 +32,8 @@ #include <algorithm> #include "dim-vector.h" -#include "lo-error.h" #include "mx-inlines.cc" +#include "oct-error.h" #include "oct-locbuf.h" template <typename R, typename X, typename Y>
--- a/liboctave/numeric/bsxfun.h +++ b/liboctave/numeric/bsxfun.h @@ -32,7 +32,7 @@ #include <string> #include "dim-vector.h" -#include "lo-error.h" +#include "oct-error.h" inline bool
--- a/liboctave/numeric/chol.cc +++ b/liboctave/numeric/chol.cc @@ -37,11 +37,11 @@ #include "fCMatrix.h" #include "fColVector.h" #include "fMatrix.h" -#include "lo-error.h" -#include "lo-lapack-proto.h" -#include "lo-qrupdate-proto.h" +#include "lapack-proto.h" +#include "oct-error.h" #include "oct-locbuf.h" #include "oct-norm.h" +#include "qrupdate-proto.h" #if ! defined (HAVE_QRUPDATE) # include "qr.h"
--- a/liboctave/numeric/chol.h +++ b/liboctave/numeric/chol.h @@ -29,7 +29,6 @@ #include "octave-config.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <typename T>
--- a/liboctave/numeric/eigs-base.cc +++ b/liboctave/numeric/eigs-base.cc @@ -35,15 +35,15 @@ #include "CSparse.h" #include "MatrixType.h" #include "PermMatrix.h" +#include "arpack-proto.h" +#include "blas-proto.h" #include "chol.h" #include "dSparse.h" #include "eigs-base.h" -#include "lo-arpack-proto.h" -#include "lo-blas-proto.h" -#include "lo-error.h" #include "lo-ieee.h" #include "lu.h" #include "mx-ops.h" +#include "oct-error.h" #include "oct-locbuf.h" #include "oct-rand.h" #include "sparse-chol.h"
--- a/liboctave/numeric/fEIG.cc +++ b/liboctave/numeric/fEIG.cc @@ -28,11 +28,11 @@ #endif #include "Array-oct.h" +#include "fColVector.h" #include "fEIG.h" -#include "fColVector.h" #include "fMatrix.h" -#include "lo-error.h" -#include "lo-lapack-proto.h" +#include "lapack-proto.h" +#include "oct-error.h" octave_idx_type FloatEIG::init (const FloatMatrix& a, bool calc_rev, bool calc_lev,
--- a/liboctave/numeric/gepbalance.cc +++ b/liboctave/numeric/gepbalance.cc @@ -32,14 +32,13 @@ #include "fCMatrix.h" #include "fMatrix.h" #include "gepbalance.h" +#include "lapack-proto.h" #include "lo-array-errwarn.h" -#include "lo-error.h" -#include "lo-lapack-proto.h" +#include "oct-error.h" #include "oct-locbuf.h" #include "quit.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <>
--- a/liboctave/numeric/gepbalance.h +++ b/liboctave/numeric/gepbalance.h @@ -31,7 +31,6 @@ #include <string> OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <typename T>
--- a/liboctave/numeric/gsvd.cc +++ b/liboctave/numeric/gsvd.cc @@ -37,8 +37,8 @@ #include "fDiagMatrix.h" #include "fMatrix.h" #include "gsvd.h" -#include "lo-error.h" -#include "lo-lapack-proto.h" +#include "lapack-proto.h" +#include "oct-error.h" #include "oct-locbuf.h" #include "oct-shlib.h"
--- a/liboctave/numeric/gsvd.h +++ b/liboctave/numeric/gsvd.h @@ -29,7 +29,6 @@ #include "octave-config.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <typename T>
--- a/liboctave/numeric/hess.cc +++ b/liboctave/numeric/hess.cc @@ -33,11 +33,10 @@ #include "fCMatrix.h" #include "fMatrix.h" #include "hess.h" -#include "lo-error.h" -#include "lo-lapack-proto.h" +#include "lapack-proto.h" +#include "oct-error.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <>
--- a/liboctave/numeric/hess.h +++ b/liboctave/numeric/hess.h @@ -31,7 +31,6 @@ #include <iosfwd> OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <typename T>
copy from liboctave/numeric/lo-lapack-proto.h copy to liboctave/numeric/lapack-proto.h --- a/liboctave/numeric/lo-lapack-proto.h +++ b/liboctave/numeric/lapack-proto.h @@ -23,8 +23,8 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_lapack_proto_h) -#define octave_lo_lapack_proto_h 1 +#if ! defined (octave_lapack_proto_h) +#define octave_lapack_proto_h 1 #include "octave-config.h"
--- a/liboctave/numeric/lo-amos-proto.h +++ b/liboctave/numeric/lo-amos-proto.h @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////// // -// Copyright (C) 2016-2025 The Octave Project Developers +// Copyright (C) 2025 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. @@ -26,102 +26,8 @@ #if ! defined (octave_lo_amos_proto_h) #define octave_lo_amos_proto_h 1 -#include "octave-config.h" +#warning 'header file "lo-amos-proto.h" is deprecated, use "amos-proto.h" instead' -#include "f77-fcn.h" - -extern "C" -{ - // AIRY - - F77_RET_T - F77_FUNC (cairy, CAIRY) (const F77_CMPLX *, const F77_INT&, - const F77_INT&, F77_CMPLX *, - F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (zairy, ZAIRY) (const F77_DBLE&, const F77_DBLE&, - const F77_INT&, const F77_INT&, - F77_DBLE&, F77_DBLE&, F77_INT&, - F77_INT&); - - // BESH - - F77_RET_T - F77_FUNC (cbesh, CBESH) (const F77_CMPLX *, const F77_REAL&, - const F77_INT&, const F77_INT&, - const F77_INT&, F77_CMPLX *, - F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (zbesh, ZBESH) (const F77_DBLE&, const F77_DBLE&, const F77_DBLE&, - const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE *, F77_DBLE *, - F77_INT&, F77_INT&); - - // BESI - - F77_RET_T - F77_FUNC (cbesi, CBESI) (const F77_CMPLX *, const F77_REAL&, - const F77_INT&, const F77_INT&, - F77_CMPLX *, F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (zbesi, ZBESI) (const F77_DBLE&, const F77_DBLE&, const F77_DBLE&, - const F77_INT&, const F77_INT&, - F77_DBLE *, F77_DBLE *, F77_INT&, - F77_INT&); - - // BESJ - - F77_RET_T - F77_FUNC (cbesj, CBESJ) (const F77_CMPLX *, const F77_REAL&, - const F77_INT&, const F77_INT&, - F77_CMPLX *, F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (zbesj, ZBESJ) (const F77_DBLE&, const F77_DBLE&, const F77_DBLE&, - const F77_INT&, const F77_INT&, - F77_DBLE *, F77_DBLE *, F77_INT&, - F77_INT&); - - // BESK - - F77_RET_T - F77_FUNC (cbesk, CBESK) (const F77_CMPLX *, const F77_REAL&, - const F77_INT&, const F77_INT&, - F77_CMPLX *, F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (zbesk, ZBESK) (const F77_DBLE&, const F77_DBLE&, const F77_DBLE&, - const F77_INT&, const F77_INT&, - F77_DBLE *, F77_DBLE *, F77_INT&, - F77_INT&); - - // BESY - - F77_RET_T - F77_FUNC (cbesy, CBESY) (const F77_CMPLX *, const F77_REAL&, - const F77_INT&, const F77_INT&, - F77_CMPLX *, F77_INT&, - F77_CMPLX *, F77_INT&); - - F77_RET_T - F77_FUNC (zbesy, ZBESY) (const F77_DBLE&, const F77_DBLE&, const F77_DBLE&, - const F77_INT&, const F77_INT&, - F77_DBLE *, F77_DBLE *, F77_INT&, F77_DBLE *, - F77_DBLE *, F77_INT&); - - // BIRY - - F77_RET_T - F77_FUNC (cbiry, CBIRY) (const F77_CMPLX *, const F77_INT&, const F77_INT&, - const F77_CMPLX *, F77_INT&); - - F77_RET_T - F77_FUNC (zbiry, ZBIRY) (const F77_DBLE&, const F77_DBLE&, - const F77_INT&, const F77_INT&, - F77_DBLE&, F77_DBLE&, F77_INT&); -} +#include "amos-proto.h" #endif
--- a/liboctave/numeric/lo-arpack-proto.h +++ b/liboctave/numeric/lo-arpack-proto.h @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////// // -// Copyright (C) 2016-2025 The Octave Project Developers +// Copyright (C) 2025 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. @@ -26,117 +26,8 @@ #if ! defined (octave_lo_arpack_proto_h) #define octave_lo_arpack_proto_h 1 -#include "octave-config.h" +#warning 'header file "lo-arpack-proto.h" is deprecated, use "arpack-proto.h" instead' -#include "f77-fcn.h" - -extern "C" -{ - -#if defined (HAVE_ARPACK) - - // NAUPD - - F77_RET_T - F77_FUNC (dnaupd, DNAUPD) (F77_INT&, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, - F77_CONST_CHAR_ARG_DECL, - F77_INT&, const F77_DBLE&, - F77_DBLE *, const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT *, - F77_INT *, F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (znaupd, ZNAUPD) (F77_INT&, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_DBLE&, - F77_DBLE_CMPLX *, const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT *, - F77_INT *, F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // NEUPD - - F77_RET_T - F77_FUNC (dneupd, DNEUPD) (const F77_INT&, - F77_CONST_CHAR_ARG_DECL, - F77_INT *, F77_DBLE *, F77_DBLE *, - F77_DBLE *, const F77_INT&, const F77_DBLE&, - const F77_DBLE&, F77_DBLE *, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, - F77_CONST_CHAR_ARG_DECL, - F77_INT&, const F77_DBLE&, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT *, - F77_INT *, F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zneupd, ZNEUPD) (const F77_INT&, - F77_CONST_CHAR_ARG_DECL, - F77_INT *, F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - const F77_INT&, const F77_DBLE_CMPLX *, - F77_DBLE_CMPLX *, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_DBLE&, - F77_DBLE_CMPLX *, const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT *, - F77_INT *, F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // SAUPD - - F77_RET_T - F77_FUNC (dsaupd, DSAUPD) (F77_INT&, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_DBLE&, - F77_DBLE *, const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT *, - F77_INT *, F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // SEUPD - - F77_RET_T - F77_FUNC (dseupd, DSEUPD) (const F77_INT&, - F77_CONST_CHAR_ARG_DECL, - F77_INT *, F77_DBLE *, F77_DBLE *, - const F77_INT&, const F77_DBLE&, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_DBLE&, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT *, - F77_INT *, F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); +#include "arpack-proto.h" #endif - -} - -#endif
--- a/liboctave/numeric/lo-blas-proto.h +++ b/liboctave/numeric/lo-blas-proto.h @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////// // -// Copyright (C) 2016-2025 The Octave Project Developers +// Copyright (C) 2025 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. @@ -26,211 +26,8 @@ #if ! defined (octave_lo_blas_proto_h) #define octave_lo_blas_proto_h 1 -#include "octave-config.h" +#warning 'header file "lo-blas-proto.h" is deprecated, use "blas-proto.h" instead' -#include "f77-fcn.h" - -extern "C" -{ - // DOT (liboctave/external/blas-xtra) - - F77_RET_T - F77_FUNC (xddot, XDDOT) (const F77_INT&, const F77_DBLE *, - const F77_INT&, const F77_DBLE *, - const F77_INT&, F77_DBLE&); - - F77_RET_T - F77_FUNC (xsdot, XSDOT) (const F77_INT&, const F77_REAL *, - const F77_INT&, const F77_REAL *, - const F77_INT&, F77_REAL&); - - // DOT3 - - F77_RET_T - F77_FUNC (ddot3, DDOT3) (const F77_INT&, const F77_INT&, - const F77_INT&, const F77_DBLE *, - const F77_DBLE *, F77_DBLE *); - - F77_RET_T - F77_FUNC (sdot3, SDOT3) (const F77_INT&, const F77_INT&, - const F77_INT&, const F77_REAL *, - const F77_REAL *, F77_REAL *); - - // DOTC (liboctave/external/blas-xtra) - - F77_RET_T - F77_FUNC (xcdotc, XCDOTC) (const F77_INT&, const F77_CMPLX *, - const F77_INT&, const F77_CMPLX *, - const F77_INT&, F77_CMPLX *); - - F77_RET_T - F77_FUNC (xzdotc, XZDOTC) (const F77_INT&, const F77_DBLE_CMPLX *, - const F77_INT&, const F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *); - - // DOTC3 - - F77_RET_T - F77_FUNC (cdotc3, CDOTC3) (const F77_INT&, const F77_INT&, - const F77_INT&, const F77_CMPLX *, - const F77_CMPLX *, F77_CMPLX *); - - F77_RET_T - F77_FUNC (zdotc3, ZDOTC3) (const F77_INT&, const F77_INT&, - const F77_INT&, const F77_DBLE_CMPLX *, - const F77_DBLE_CMPLX *, F77_DBLE_CMPLX *); - - // DOTU (liboctave/external/blas-xtra) - - F77_RET_T - F77_FUNC (xcdotu, XCDOTU) (const F77_INT&, const F77_CMPLX *, - const F77_INT&, const F77_CMPLX *, - const F77_INT&, F77_CMPLX *); - - F77_RET_T - F77_FUNC (xzdotu, XZDOTU) (const F77_INT&, const F77_DBLE_CMPLX *, - const F77_INT&, const F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *); - - // GEMM - - F77_RET_T - F77_FUNC (cgemm, CGEMM) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_CMPLX&, - const F77_CMPLX *, const F77_INT&, - const F77_CMPLX *, const F77_INT&, - const F77_CMPLX&, F77_CMPLX *, - const F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dgemm, DGEMM) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_DBLE&, - const F77_DBLE *, const F77_INT&, - const F77_DBLE *, const F77_INT&, - const F77_DBLE&, F77_DBLE *, - const F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sgemm, SGEMM) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_REAL&, - const F77_REAL *, const F77_INT&, - const F77_REAL *, const F77_INT&, - const F77_REAL&, F77_REAL *, - const F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgemm, ZGEMM) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_DBLE_CMPLX&, - const F77_DBLE_CMPLX *, const F77_INT&, - const F77_DBLE_CMPLX *, const F77_INT&, - const F77_DBLE_CMPLX&, F77_DBLE_CMPLX *, - const F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // GEMV - - F77_RET_T - F77_FUNC (cgemv, CGEMV) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_CMPLX&, const F77_CMPLX *, - const F77_INT&, const F77_CMPLX *, - const F77_INT&, const F77_CMPLX&, - F77_CMPLX *, const F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dgemv, DGEMV) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_DBLE&, const F77_DBLE *, - const F77_INT&, const F77_DBLE *, - const F77_INT&, const F77_DBLE&, - F77_DBLE *, const F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sgemv, SGEMV) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_REAL&, const F77_REAL *, - const F77_INT&, const F77_REAL *, - const F77_INT&, const F77_REAL&, - F77_REAL *, const F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgemv, ZGEMV) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_DBLE_CMPLX&, const F77_DBLE_CMPLX *, - const F77_INT&, const F77_DBLE_CMPLX *, - const F77_INT&, const F77_DBLE_CMPLX&, - F77_DBLE_CMPLX *, const F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // MATM3 - - F77_RET_T - F77_FUNC (cmatm3, CMATM3) (const F77_INT&, const F77_INT&, - const F77_INT&, const F77_INT&, - const F77_CMPLX *, const F77_CMPLX *, - F77_CMPLX *); - F77_RET_T - F77_FUNC (dmatm3, DMATM3) (const F77_INT&, const F77_INT&, - const F77_INT&, const F77_INT&, - const F77_DBLE *, const F77_DBLE *, F77_DBLE *); - - F77_RET_T - F77_FUNC (smatm3, SMATM3) (const F77_INT&, const F77_INT&, - const F77_INT&, const F77_INT&, - const F77_REAL *, const F77_REAL *, F77_REAL *); - - F77_RET_T - F77_FUNC (zmatm3, ZMATM3) (const F77_INT&, const F77_INT&, - const F77_INT&, const F77_INT&, - const F77_DBLE_CMPLX *, const F77_DBLE_CMPLX *, - F77_DBLE_CMPLX *); - - // XERBLA - - OCTAVE_API - F77_RET_T - F77_FUNC (xerbla, XERBLA) (F77_CONST_CHAR_ARG_DECL, const F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // Declarations for the *axpy BLAS functions - // The *axpy functions are used by convolution. - - F77_RET_T - F77_FUNC (daxpy, DAXPY) (const F77_INT&, const F77_DBLE&, const F77_DBLE *, - const F77_INT&, F77_DBLE *, const F77_INT&); - - F77_RET_T - F77_FUNC (saxpy, SAXPY) (const F77_INT&, const F77_REAL&, const F77_REAL *, - const F77_INT&, F77_REAL *, const F77_INT&); - - F77_RET_T - F77_FUNC (zaxpy, ZAXPY) (const F77_INT&, const F77_DBLE_CMPLX&, - const F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&); - - F77_RET_T - F77_FUNC (caxpy, CAXPY) (const F77_INT&, const F77_CMPLX&, - const F77_CMPLX *, const F77_INT&, - F77_CMPLX *, const F77_INT&); - -} +#include "blas-proto.h" #endif
--- a/liboctave/numeric/lo-lapack-proto.h +++ b/liboctave/numeric/lo-lapack-proto.h @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////// // -// Copyright (C) 2016-2025 The Octave Project Developers +// Copyright (C) 2025 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. @@ -26,2086 +26,8 @@ #if ! defined (octave_lo_lapack_proto_h) #define octave_lo_lapack_proto_h 1 -#include "octave-config.h" +#warning 'header file "lo-lapack-proto.h" is deprecated, use "lapack-proto.h" instead' -#include "f77-fcn.h" -#include "oct-cmplx.h" - -extern "C" -{ - // GBCON - - F77_RET_T - F77_FUNC (dgbcon, DGBCON) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE *, - const F77_INT&, const F77_INT *, - const F77_DBLE&, F77_DBLE&, F77_DBLE *, - F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgbcon, ZGBCON) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, const F77_INT *, - const F77_DBLE&, F77_DBLE&, F77_DBLE_CMPLX *, - F77_DBLE *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // GBTRF - - F77_RET_T - F77_FUNC (dgbtrf, DGBTRF) (const F77_INT&, const F77_INT&, - const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_INT *, F77_INT&); - - F77_RET_T - F77_FUNC (zgbtrf, ZGBTRF) (const F77_INT&, const F77_INT&, - const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_INT *, F77_INT&); - - // GBTRS - - F77_RET_T - F77_FUNC (dgbtrs, DGBTRS) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_INT&, - const F77_DBLE *, const F77_INT&, - const F77_INT *, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgbtrs, ZGBTRS) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_INT&, - const F77_DBLE_CMPLX *, const F77_INT&, - const F77_INT *, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // GEBAL - - F77_RET_T - F77_FUNC (cgebal, CGEBAL) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_INT&, - F77_INT&, F77_REAL *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dgebal, DGEBAL) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT&, - F77_INT&, F77_DBLE *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sgebal, SGEBAL) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_INT&, - F77_INT&, F77_REAL *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgebal, ZGEBAL) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT&, - F77_INT&, F77_DBLE *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // GEBAK - - F77_RET_T - F77_FUNC (cgebak, CGEBAK) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_REAL *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dgebak, DGEBAK) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sgebak, SGEBAK) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgebak, ZGEBAK) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_DBLE *, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // GECON - - F77_RET_T - F77_FUNC (cgecon, CGECON) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_CMPLX *, - const F77_INT&, const F77_REAL&, F77_REAL&, - F77_CMPLX *, F77_REAL *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dgecon, DGECON) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE *, - const F77_INT&, const F77_DBLE&, F77_DBLE&, - F77_DBLE *, F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sgecon, SGECON) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_REAL *, - const F77_INT&, const F77_REAL&, F77_REAL&, - F77_REAL *, F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgecon, ZGECON) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, const F77_DBLE&, F77_DBLE&, - F77_DBLE_CMPLX *, F77_DBLE *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // GEHRD - - F77_RET_T - F77_FUNC (cgehrd, CGEHRD) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, F77_CMPLX *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (dgehrd, DGEHRD) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (sgehrd, SGEHRD) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, F77_REAL *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (zgehrd, ZGEHRD) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT&); - - // GEQP3 - - F77_RET_T - F77_FUNC (cgeqp3, CGEQP3) (const F77_INT&, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_INT *, F77_CMPLX *, F77_CMPLX *, - const F77_INT&, F77_REAL *, F77_INT&); - - F77_RET_T - F77_FUNC (dgeqp3, DGEQP3) (const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_INT *, F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (sgeqp3, SGEQP3) (const F77_INT&, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_INT *, F77_REAL *, F77_REAL *, - const F77_INT&, F77_INT&); - F77_RET_T - F77_FUNC (zgeqp3, ZGEQP3) (const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_INT *, F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE *, F77_INT&); - - // GEQRF - - F77_RET_T - F77_FUNC (cgeqrf, CGEQRF) (const F77_INT&, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, F77_CMPLX *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (dgeqrf, DGEQRF) (const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (sgeqrf, SGEQRF) (const F77_INT&, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_REAL *, F77_REAL *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (zgeqrf, ZGEQRF) (const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT&); - - // GELQF - - F77_RET_T - F77_FUNC (cgelqf, CGELQF) (const F77_INT&, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, F77_CMPLX *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (dgelqf, DGELQF) (const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (sgelqf, SGELQF) (const F77_INT&, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_REAL *, F77_REAL *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (zgelqf, ZGELQF) (const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT&); - - // ORMLQ - - F77_RET_T - F77_FUNC (cormlq, CORMLQ) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dormlq, DORMLQ) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sormlq, SORMLQ) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_REAL *, F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zormlq, ZORMLQ) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // ORMQR - - F77_RET_T - F77_FUNC (cormqr, CORMQR) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dormqr, DORMQR) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sormqr, SORMQR) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_REAL *, F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zormqr, ZORMQR) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // GESDD - - F77_RET_T - F77_FUNC (cgesdd, CGESDD) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_CMPLX *, const F77_INT&, F77_REAL *, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, const F77_INT&, F77_REAL *, - F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dgesdd, DGESDD) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, F77_DBLE *, - F77_DBLE *, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sgesdd, SGESDD) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_REAL *, const F77_INT&, F77_REAL *, - F77_REAL *, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgesdd, ZGESDD) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, F77_DBLE *, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, F77_DBLE *, - F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - // GESVD - - F77_RET_T - F77_FUNC (cgesvd, CGESVD) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_CMPLX *, const F77_INT&, F77_REAL *, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_REAL *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dgesvd, DGESVD) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, F77_DBLE *, - F77_DBLE *, const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sgesvd, SGESVD) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_REAL *, const F77_INT&, F77_REAL *, - F77_REAL *, const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgesvd, ZGESVD) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE *, F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // GEJSV - - F77_RET_T - F77_FUNC (cgejsv, CGEJSV) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_CMPLX *, const F77_INT&, F77_REAL *, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dgejsv, DGEJSV) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, F77_DBLE *, - F77_DBLE *, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sgejsv, SGEJSV) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_REAL *, const F77_INT&, F77_REAL *, - F77_REAL *, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgejsv, ZGEJSV) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, F77_DBLE *, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // GEESX - - typedef F77_INT (*double_selector) (const F77_DBLE&, const F77_DBLE&); - typedef F77_INT (*float_selector) (const F77_REAL&, const F77_REAL&); - typedef F77_INT (*complex_selector) (const F77_DBLE_CMPLX&); - typedef F77_INT (*float_complex_selector) (const F77_CMPLX&); - - F77_RET_T - F77_FUNC (cgeesx, CGEESX) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - float_complex_selector, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_INT&, - F77_CMPLX *, F77_CMPLX *, - const F77_INT&, F77_REAL&, F77_REAL&, - F77_CMPLX *, const F77_INT&, - F77_REAL *, F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dgeesx, DGEESX) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - double_selector, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT&, - F77_DBLE *, F77_DBLE *, F77_DBLE *, const F77_INT&, - F77_DBLE&, F77_DBLE&, F77_DBLE *, const F77_INT&, - F77_INT *, const F77_INT&, - F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sgeesx, SGEESX) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - float_selector, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_INT&, - F77_REAL *, F77_REAL *, F77_REAL *, const F77_INT&, - F77_REAL&, F77_REAL&, F77_REAL *, const F77_INT&, - F77_INT *, const F77_INT&, - F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgeesx, ZGEESX) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - complex_selector, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT&, - F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE&, F77_DBLE&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE *, - F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // GEEVX - - F77_RET_T - F77_FUNC (cgeevx, CGEEVX) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_INT&, - F77_INT&, F77_REAL *, F77_REAL&, F77_REAL *, - F77_REAL *, F77_CMPLX *, const F77_INT&, - F77_REAL *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dgeevx, DGEEVX) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, F77_DBLE *, - F77_DBLE *, const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT&, - F77_INT&, F77_DBLE *, F77_DBLE&, - F77_DBLE *, F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_INT *, - F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sgeevx, SGEEVX) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, F77_REAL *, F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_INT&, - F77_INT&, F77_REAL *, F77_REAL&, F77_REAL *, - F77_REAL *, F77_REAL *, const F77_INT&, - F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgeevx, ZGEEVX) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - F77_DBLE_CMPLX *, const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT&, - F77_INT&, F77_DBLE *, F77_DBLE&, - F77_DBLE *, F77_DBLE *, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE *, - F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // GELSD - - F77_RET_T - F77_FUNC (cgelsd, CGELSD) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_REAL *, F77_REAL&, - F77_INT&, F77_CMPLX *, - const F77_INT&, F77_REAL *, - F77_INT *, F77_INT&); - - F77_RET_T - F77_FUNC (dgelsd, DGELSD) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, F77_DBLE&, - F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT *, - F77_INT&); - - F77_RET_T - F77_FUNC (sgelsd, SGELSD) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, F77_REAL&, - F77_INT&, F77_REAL *, - const F77_INT&, F77_INT *, - F77_INT&); - - F77_RET_T - F77_FUNC (zgelsd, ZGELSD) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE *, F77_DBLE&, - F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE *, - F77_INT *, F77_INT&); - - // GELSY - - F77_RET_T - F77_FUNC (cgelsy, CGELSY) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_INT *, - F77_REAL&, F77_INT&, F77_CMPLX *, - const F77_INT&, F77_REAL *, F77_INT&); - - F77_RET_T - F77_FUNC (dgelsy, DGELSY) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT *, - F77_DBLE&, F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (sgelsy, SGELSY) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_INT *, - F77_REAL&, F77_INT&, F77_REAL *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (zgelsy, ZGELSY) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT *, - F77_DBLE&, F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE *, - F77_INT&); - - // GETRF - - F77_RET_T - F77_FUNC (cgetrf, CGETRF) (const F77_INT&, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_INT *, F77_INT&); - - F77_RET_T - F77_FUNC (dgetrf, DGETRF) (const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_INT *, F77_INT&); - - F77_RET_T - F77_FUNC (sgetrf, SGETRF) (const F77_INT&, - const F77_INT&, F77_REAL *, - const F77_INT&, - F77_INT *, F77_INT&); - - F77_RET_T - F77_FUNC (zgetrf, ZGETRF) (const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_INT *, F77_INT&); - - // GETRI - - F77_RET_T - F77_FUNC (cgetri, CGETRI) (const F77_INT&, F77_CMPLX *, - const F77_INT&, const F77_INT *, - F77_CMPLX *, const F77_INT&, - F77_INT&); - - F77_RET_T - F77_FUNC (dgetri, DGETRI) (const F77_INT&, F77_DBLE *, - const F77_INT&, const F77_INT *, - F77_DBLE *, const F77_INT&, - F77_INT&); - - F77_RET_T - F77_FUNC (sgetri, SGETRI) (const F77_INT&, F77_REAL *, - const F77_INT&, const F77_INT *, - F77_REAL *, const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (zgetri, ZGETRI) (const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, const F77_INT *, - F77_DBLE_CMPLX *, const F77_INT&, - F77_INT&); - - // GETRS - - F77_RET_T - F77_FUNC (cgetrs, CGETRS) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_CMPLX *, const F77_INT&, - const F77_INT *, F77_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dgetrs, DGETRS) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_DBLE *, const F77_INT&, - const F77_INT *, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sgetrs, SGETRS) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_REAL *, const F77_INT&, - const F77_INT *, F77_REAL *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgetrs, ZGETRS) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - const F77_INT *, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // GGBAL - - F77_RET_T - F77_FUNC (cggbal, CGGBAL) (F77_CONST_CHAR_ARG_DECL, - const F77_INT& N, - F77_CMPLX *A, const F77_INT& LDA, - F77_CMPLX *B, const F77_INT& LDB, - F77_INT& ILO, F77_INT& IHI, - F77_REAL *LSCALE, F77_REAL *RSCALE, - F77_REAL *WORK, F77_INT& INFO - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dggbal, DGGBAL) (F77_CONST_CHAR_ARG_DECL, - const F77_INT& N, F77_DBLE *A, - const F77_INT& LDA, F77_DBLE *B, - const F77_INT& LDB, F77_INT& ILO, - F77_INT& IHI, F77_DBLE *LSCALE, - F77_DBLE *RSCALE, F77_DBLE *WORK, - F77_INT& INFO - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sggbal, SGGBAL) (F77_CONST_CHAR_ARG_DECL, - const F77_INT& N, F77_REAL *A, - const F77_INT& LDA, F77_REAL *B, - const F77_INT& LDB, - F77_INT& ILO, F77_INT& IHI, - F77_REAL *LSCALE, F77_REAL *RSCALE, - F77_REAL *WORK, F77_INT& INFO - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zggbal, ZGGBAL) (F77_CONST_CHAR_ARG_DECL, - const F77_INT& N, F77_DBLE_CMPLX *A, - const F77_INT& LDA, F77_DBLE_CMPLX *B, - const F77_INT& LDB, F77_INT& ILO, - F77_INT& IHI, F77_DBLE *LSCALE, - F77_DBLE *RSCALE, F77_DBLE *WORK, - F77_INT& INFO - F77_CHAR_ARG_LEN_DECL); - - // GGBAK - - F77_RET_T - F77_FUNC (dggbak, DGGBAK) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT& N, - const F77_INT& ILO, - const F77_INT& IHI, - const F77_DBLE *LSCALE, const F77_DBLE *RSCALE, - F77_INT& M, F77_DBLE *V, - const F77_INT& LDV, F77_INT& INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sggbak, SGGBAK) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT& N, - const F77_INT& ILO, - const F77_INT& IHI, - const F77_REAL *LSCALE, const F77_REAL *RSCALE, - F77_INT& M, F77_REAL *V, - const F77_INT& LDV, F77_INT& INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zggbak, ZGGBAK) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT& N, - const F77_INT& ILO, - const F77_INT& IHI, - const F77_DBLE *LSCALE, const F77_DBLE *RSCALE, - F77_INT& M, F77_DBLE_CMPLX *V, - const F77_INT& LDV, F77_INT& INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // GGEV - - F77_RET_T - F77_FUNC (cggev, CGGEV) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - F77_CMPLX *, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_REAL *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dggev, DGGEV) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_DBLE *, F77_DBLE *, F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sggev, SGGEV) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, F77_REAL *, F77_REAL *, - F77_REAL *, const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zggev, ZGGEV) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // GGHRD - - F77_RET_T - F77_FUNC (dgghrd, DGGHRD) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT& N, - const F77_INT& ILO, - const F77_INT& IHI, F77_DBLE *A, - const F77_INT& LDA, F77_DBLE *B, - const F77_INT& LDB, F77_DBLE *Q, - const F77_INT& LDQ, F77_DBLE *Z, - const F77_INT& LDZ, F77_INT& INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgghrd, ZGGHRD) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT& N, - const F77_INT& ILO, - const F77_INT& IHI, F77_DBLE_CMPLX *A, - const F77_INT& LDA, F77_DBLE_CMPLX *B, - const F77_INT& LDB, F77_DBLE_CMPLX *Q, - const F77_INT& LDQ, F77_DBLE_CMPLX *Z, - const F77_INT& LDZ, F77_INT& INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // GGSVD - - F77_RET_T - F77_FUNC (dggsvd, DGGSVD) - (F77_CONST_CHAR_ARG_DECL, // JOBU - F77_CONST_CHAR_ARG_DECL, // JOBV - F77_CONST_CHAR_ARG_DECL, // JOBQ - const F77_INT&, // M - const F77_INT&, // N - const F77_INT&, // P - F77_INT&, // K - F77_INT&, // L - F77_DBLE *, // A(LDA,N) - const F77_INT&, // LDA - F77_DBLE *, // B(LDB,N) - const F77_INT&, // LDB - F77_DBLE *, // ALPHA(N) - F77_DBLE *, // BETA(N) - F77_DBLE *, // U(LDU,M) - const F77_INT&, // LDU - F77_DBLE *, // V(LDV,P) - const F77_INT&, // LDV - F77_DBLE *, // Q(LDQ,N) - const F77_INT&, // LDQ - F77_DBLE *, // WORK - F77_INT *, // IWORK(N) - F77_INT& // INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sggsvd, SGGSVD) - (F77_CONST_CHAR_ARG_DECL, // JOBU - F77_CONST_CHAR_ARG_DECL, // JOBV - F77_CONST_CHAR_ARG_DECL, // JOBQ - const F77_INT&, // M - const F77_INT&, // N - const F77_INT&, // P - F77_INT&, // K - F77_INT&, // L - F77_REAL *, // A - const F77_INT&, // LDA - F77_REAL *, // B - const F77_INT&, // LDB - F77_REAL *, // ALPHA - F77_REAL *, // BETA - F77_REAL *, // U - const F77_INT&, // LDU - F77_REAL *, // V - const F77_INT&, // LDV - F77_REAL *, // Q - const F77_INT&, // LDQ - F77_REAL *, // WORK - F77_INT *, // IWORK - F77_INT& // INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zggsvd, ZGGSVD) - (F77_CONST_CHAR_ARG_DECL, // JOBU - F77_CONST_CHAR_ARG_DECL, // JOBV - F77_CONST_CHAR_ARG_DECL, // JOBQ - const F77_INT&, // M - const F77_INT&, // N - const F77_INT&, // P - F77_INT&, // K - F77_INT&, // L - F77_DBLE_CMPLX *, // A(LDA,N) - const F77_INT&, // LDA - F77_DBLE_CMPLX *, // B(LDB,N) - const F77_INT&, // LDB - F77_DBLE *, // ALPHA(N) - F77_DBLE *, // BETA(N) - F77_DBLE_CMPLX *, // U(LDU,M) - const F77_INT&, // LDU - F77_DBLE_CMPLX *, // V(LDV,P) - const F77_INT&, // LDV - F77_DBLE_CMPLX *, // Q(LDQ,N) - const F77_INT&, // LDQ - F77_DBLE_CMPLX *, // WORK - F77_DBLE *, // RWORK - F77_INT *, // IWORK(N) - F77_INT& // INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (cggsvd, CGGSVD) - (F77_CONST_CHAR_ARG_DECL, // JOBU - F77_CONST_CHAR_ARG_DECL, // JOBV - F77_CONST_CHAR_ARG_DECL, // JOBQ - const F77_INT&, // M - const F77_INT&, // N - const F77_INT&, // P - F77_INT&, // K - F77_INT&, // L - F77_CMPLX *, // A - const F77_INT&, // LDA - F77_CMPLX *, // B - const F77_INT&, // LDB - F77_REAL *, // ALPHA - F77_REAL *, // BETA - F77_CMPLX *, // U - const F77_INT&, // LDU - F77_CMPLX *, // V - const F77_INT&, // LDV - F77_CMPLX *, // Q - const F77_INT&, // LDQ - F77_CMPLX *, // WORK - F77_REAL *, // RWORK - F77_INT *, // IWORK - F77_INT& // INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // GGSVD3 - - F77_RET_T - F77_FUNC (dggsvd3, DGGSVD3) - (F77_CONST_CHAR_ARG_DECL, // JOBU - F77_CONST_CHAR_ARG_DECL, // JOBV - F77_CONST_CHAR_ARG_DECL, // JOBQ - const F77_INT&, // M - const F77_INT&, // N - const F77_INT&, // P - F77_INT&, // K - F77_INT&, // L - F77_DBLE *, // A(LDA,N) - const F77_INT&, // LDA - F77_DBLE *, // B(LDB,N) - const F77_INT&, // LDB - F77_DBLE *, // ALPHA(N) - F77_DBLE *, // BETA(N) - F77_DBLE *, // U(LDU,M) - const F77_INT&, // LDU - F77_DBLE *, // V(LDV,P) - const F77_INT&, // LDV - F77_DBLE *, // Q(LDQ,N) - const F77_INT&, // LDQ - F77_DBLE *, // WORK - const F77_INT&, // LWORK - F77_INT *, // IWORK(N) - F77_INT& // INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (sggsvd3, SGGSVD3) - (F77_CONST_CHAR_ARG_DECL, // JOBU - F77_CONST_CHAR_ARG_DECL, // JOBV - F77_CONST_CHAR_ARG_DECL, // JOBQ - const F77_INT&, // M - const F77_INT&, // N - const F77_INT&, // P - F77_INT&, // K - F77_INT&, // L - F77_REAL *, // A - const F77_INT&, // LDA - F77_REAL *, // B - const F77_INT&, // LDB - F77_REAL *, // ALPHA - F77_REAL *, // BETA - F77_REAL *, // U - const F77_INT&, // LDU - F77_REAL *, // V - const F77_INT&, // LDV - F77_REAL *, // Q - const F77_INT&, // LDQ - F77_REAL *, // WORK - const F77_INT&, // LWORK - F77_INT *, // IWORK - F77_INT& // INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zggsvd3, ZGGSVD3) - (F77_CONST_CHAR_ARG_DECL, // JOBU - F77_CONST_CHAR_ARG_DECL, // JOBV - F77_CONST_CHAR_ARG_DECL, // JOBQ - const F77_INT&, // M - const F77_INT&, // N - const F77_INT&, // P - F77_INT&, // K - F77_INT&, // L - F77_DBLE_CMPLX *, // A(LDA,N) - const F77_INT&, // LDA - F77_DBLE_CMPLX *, // B(LDB,N) - const F77_INT&, // LDB - F77_DBLE *, // ALPHA(N) - F77_DBLE *, // BETA(N) - F77_DBLE_CMPLX *, // U(LDU,M) - const F77_INT&, // LDU - F77_DBLE_CMPLX *, // V(LDV,P) - const F77_INT&, // LDV - F77_DBLE_CMPLX *, // Q(LDQ,N) - const F77_INT&, // LDQ - F77_DBLE_CMPLX *, // WORK - const F77_INT&, // LWORK - F77_DBLE *, // RWORK - F77_INT *, // IWORK(N) - F77_INT& // INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (cggsvd3, CGGSVD3) - (F77_CONST_CHAR_ARG_DECL, // JOBU - F77_CONST_CHAR_ARG_DECL, // JOBV - F77_CONST_CHAR_ARG_DECL, // JOBQ - const F77_INT&, // M - const F77_INT&, // N - const F77_INT&, // P - F77_INT&, // K - F77_INT&, // L - F77_CMPLX *, // A - const F77_INT&, // LDA - F77_CMPLX *, // B - const F77_INT&, // LDB - F77_REAL *, // ALPHA - F77_REAL *, // BETA - F77_CMPLX *, // U - const F77_INT&, // LDU - F77_CMPLX *, // V - const F77_INT&, // LDV - F77_CMPLX *, // Q - const F77_INT&, // LDQ - F77_CMPLX *, // WORK - const F77_INT&, // LWORK - F77_REAL *, // RWORK - F77_INT *, // IWORK - F77_INT& // INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // GTSV - - F77_RET_T - F77_FUNC (dgtsv, DGTSV) (const F77_INT&, const F77_INT&, - F77_DBLE *, F77_DBLE *, F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (zgtsv, ZGTSV) (const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT&); - - // GTTRF - - F77_RET_T - F77_FUNC (dgttrf, DGTTRF) (const F77_INT&, F77_DBLE *, F77_DBLE *, - F77_DBLE *, F77_DBLE *, F77_INT *, - F77_INT&); - - F77_RET_T - F77_FUNC (zgttrf, ZGTTRF) (const F77_INT&, F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, F77_INT *, - F77_INT&); - - // GTTRS - - F77_RET_T - F77_FUNC (dgttrs, DGTTRS) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_DBLE *, const F77_DBLE *, - const F77_DBLE *, const F77_DBLE *, - const F77_INT *, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zgttrs, ZGTTRS) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_DBLE_CMPLX *, const F77_DBLE_CMPLX *, - const F77_DBLE_CMPLX *, const F77_DBLE_CMPLX *, - const F77_INT *, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // HEEV - - F77_RET_T - F77_FUNC (cheev, CHEEV) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_REAL *, F77_CMPLX *, - const F77_INT&, F77_REAL *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zheev, ZHEEV) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE *, - F77_DBLE_CMPLX *, const F77_INT&, F77_DBLE *, - F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // HEGV - - F77_RET_T - F77_FUNC (chegv, CHEGV) (const F77_INT&, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_REAL *, F77_CMPLX *, - const F77_INT&, F77_REAL *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zhegv, ZHEGV) (const F77_INT&, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE *, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // HERK - - F77_RET_T - F77_FUNC (cherk, CHERK) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_REAL&, const F77_CMPLX *, - const F77_INT&, const F77_REAL&, - F77_CMPLX *, const F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zherk, ZHERK) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_DBLE&, const F77_DBLE_CMPLX *, - const F77_INT&, const F77_DBLE&, F77_DBLE_CMPLX *, - const F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // HGEQZ - - F77_RET_T - F77_FUNC (dhgeqz, DHGEQZ) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT& N, - const F77_INT& ILO, - const F77_INT& IHI, - F77_DBLE *A, const F77_INT& LDA, F77_DBLE *B, - const F77_INT& LDB, F77_DBLE *ALPHAR, - F77_DBLE *ALPHAI, F77_DBLE *BETA, F77_DBLE *Q, - const F77_INT& LDQ, F77_DBLE *Z, - const F77_INT& LDZ, F77_DBLE *WORK, - const F77_INT& LWORK, - F77_INT& INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zhgeqz, ZHGEQZ) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT& N, - const F77_INT& ILO, - const F77_INT& IHI, - F77_DBLE_CMPLX *A, const F77_INT& LDA, - F77_DBLE_CMPLX *B, const F77_INT& LDB, - F77_DBLE_CMPLX *ALPHA, F77_DBLE_CMPLX *BETA, - F77_DBLE_CMPLX *CQ, const F77_INT& LDQ, - F77_DBLE_CMPLX *CZ, const F77_INT& LDZ, - F77_DBLE_CMPLX *WORK, const F77_INT& LWORK, - F77_DBLE *RWORK, F77_INT& INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // LAENV (liboctave/external/lapack-xtra) - - F77_RET_T - F77_FUNC (xilaenv, XILAENV) (const F77_INT&, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_INT&, - F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // LAG2 - - F77_RET_T - F77_FUNC (dlag2, DLAG2) (const F77_DBLE *A, const F77_INT& LDA, - const F77_DBLE *B, const F77_INT& LDB, - const F77_DBLE& SAFMIN, F77_DBLE& SCALE1, - F77_DBLE& SCALE2, F77_DBLE& WR1, F77_DBLE& WR2, - F77_DBLE& WI); - - // LAMCH (liboctave/external/lapack-xtra) - - F77_RET_T - F77_FUNC (xdlamch, XDLAMCH) (F77_CONST_CHAR_ARG_DECL, - F77_DBLE& retval - F77_CHAR_ARG_LEN_DECL); - - // LANGE (liboctave/external/lapack-xtra) - - F77_RET_T - F77_FUNC (xclange, XCLANGE) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_CMPLX *, const F77_INT&, - F77_REAL *, F77_REAL& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (xdlange, XDLANGE) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_DBLE *, const F77_INT&, - F77_DBLE *, F77_DBLE& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (xslange, XSLANGE) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, - const F77_INT&, const F77_REAL *, - const F77_INT&, F77_REAL *, F77_REAL& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (xzlange, XZLANGE) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE *, F77_DBLE& - F77_CHAR_ARG_LEN_DECL); - // LARTG - - F77_RET_T - F77_FUNC (clartg, CLARTG) (const F77_CMPLX *, const F77_CMPLX *, - F77_REAL&, F77_CMPLX *, F77_CMPLX *); - - F77_RET_T - F77_FUNC (dlartg, DLARTG) (const F77_DBLE&, const F77_DBLE&, F77_DBLE&, - F77_DBLE&, F77_DBLE&); - - F77_RET_T - F77_FUNC (slartg, SLARTG) (const F77_REAL&, const F77_REAL&, F77_REAL&, - F77_REAL&, F77_REAL&); - - F77_RET_T - F77_FUNC (zlartg, ZLARTG) (const F77_DBLE_CMPLX *, const F77_DBLE_CMPLX *, - F77_DBLE&, - F77_DBLE_CMPLX *, F77_DBLE_CMPLX *); - - // ORGHR - - F77_RET_T - F77_FUNC (dorghr, DORGHR) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (sorghr, SORGHR) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, F77_REAL *, - const F77_INT&, F77_INT&); - - // ORGQR - - F77_RET_T - F77_FUNC (dorgqr, DORGQR) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (sorgqr, SORGQR) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, F77_REAL *, - const F77_INT&, F77_INT&); - - // PBCON - - F77_RET_T - F77_FUNC (dpbcon, DPBCON) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, - const F77_DBLE&, F77_DBLE&, F77_DBLE *, - F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zpbcon, ZPBCON) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, const F77_DBLE&, - F77_DBLE&, F77_DBLE_CMPLX *, F77_DBLE *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // PBTRF - - F77_RET_T - F77_FUNC (dpbtrf, DPBTRF) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zpbtrf, ZPBTRF) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // PBTRS - - F77_RET_T - F77_FUNC (dpbtrs, DPBTRS) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zpbtrs, ZPBTRS) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // POCON - - F77_RET_T - F77_FUNC (cpocon, CPOCON) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_CMPLX *, - const F77_INT&, const F77_REAL&, F77_REAL&, - F77_CMPLX *, F77_REAL *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dpocon, DPOCON) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE *, - const F77_INT&, const F77_DBLE&, - F77_DBLE&, F77_DBLE *, F77_INT *, - F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (spocon, SPOCON) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_REAL *, - const F77_INT&, const F77_REAL&, - F77_REAL&, F77_REAL *, F77_INT *, - F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zpocon, ZPOCON) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, const F77_DBLE&, - F77_DBLE&, F77_DBLE_CMPLX *, F77_DBLE *, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // POTRF - - F77_RET_T - F77_FUNC (cpotrf, CPOTRF) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dpotrf, DPOTRF) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (spotrf, SPOTRF) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zpotrf, ZPOTRF) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // POTRI - - F77_RET_T - F77_FUNC (cpotri, CPOTRI) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dpotri, DPOTRI) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (spotri, SPOTRI) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zpotri, ZPOTRI) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // POTRS - - F77_RET_T - F77_FUNC (spotrs, SPOTRS) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_REAL *, const F77_INT&, F77_REAL *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (cpotrs, CPOTRS) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, - const F77_INT&, const F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dpotrs, DPOTRS) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_DBLE *, const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zpotrs, ZPOTRS) (F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL); - - // PTSV - - F77_RET_T - F77_FUNC (dptsv, DPTSV) (const F77_INT&, const F77_INT&, - F77_DBLE *, F77_DBLE *, F77_DBLE *, const F77_INT&, - F77_INT&); - - F77_RET_T - F77_FUNC (zptsv, ZPTSV) (const F77_INT&, const F77_INT&, - F77_DBLE *, F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT&); - - // RSF2CSF (liboctave/external/lapack-xtra) - - F77_RET_T - F77_FUNC (zrsf2csf, ZRSF2CSF) (const F77_INT&, F77_DBLE_CMPLX *, - F77_DBLE_CMPLX *, F77_DBLE *, F77_DBLE *); - - F77_RET_T - F77_FUNC (crsf2csf, CRSF2CSF) (const F77_INT&, F77_CMPLX *, - F77_CMPLX *, F77_REAL *, F77_REAL *); - - // SYEV - - F77_RET_T - F77_FUNC (dsyev, DSYEV) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (ssyev, SSYEV) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, F77_REAL *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // SYGV - - F77_RET_T - F77_FUNC (dsygv, DSYGV) (const F77_INT&, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (ssygv, SSYGV) (const F77_INT&, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, F77_REAL *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // SYRK - - F77_RET_T - F77_FUNC (csyrk, CSYRK) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_CMPLX&, const F77_CMPLX *, - const F77_INT&, const F77_CMPLX&, - F77_CMPLX *, const F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dsyrk, DSYRK) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_DBLE&, const F77_DBLE *, const F77_INT&, - const F77_DBLE&, F77_DBLE *, const F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (ssyrk, SSYRK) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_REAL&, const F77_REAL *, const F77_INT&, - const F77_REAL&, F77_REAL *, const F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (zsyrk, ZSYRK) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_DBLE_CMPLX&, const F77_DBLE_CMPLX *, - const F77_INT&, const F77_DBLE_CMPLX&, - F77_DBLE_CMPLX *, const F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // TGEVC - - // Documentation for DTGEVC incorrectly states that VR, VL are - // complex*16; they are declared in DTGEVC as double precision - // (probably a cut and paste problem fro ZTGEVC). - F77_RET_T - F77_FUNC (dtgevc, DTGEVC) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_INT *SELECT, - const F77_INT& N, F77_DBLE *A, - const F77_INT& LDA, F77_DBLE *B, - const F77_INT& LDB, F77_DBLE *VL, - const F77_INT& LDVL, F77_DBLE *VR, - const F77_INT& LDVR, - const F77_INT& MM, F77_INT& M, - F77_DBLE *WORK, F77_INT& INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (ztgevc, ZTGEVC) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_INT *SELECT, - const F77_INT& N, const F77_DBLE_CMPLX *A, - const F77_INT& LDA, const F77_DBLE_CMPLX *B, - const F77_INT& LDB, F77_DBLE_CMPLX *xVL, - const F77_INT& LDVL, F77_DBLE_CMPLX *xVR, - const F77_INT& LDVR, - const F77_INT& MM, F77_INT& M, - F77_DBLE_CMPLX *CWORK, F77_DBLE *RWORK, - F77_INT& INFO - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // TGSEN - - F77_RET_T - F77_FUNC (dtgsen, DTGSEN) (const F77_INT& IJOB, - const F77_LOGICAL& WANTQ, - const F77_LOGICAL& WANTZ, - const F77_LOGICAL *SELECT, - const F77_INT& N, - F77_DBLE *A, - const F77_INT& LDA, - F77_DBLE *B, - const F77_INT& LDB, - F77_DBLE *ALPHAR, - F77_DBLE *ALPHAI, - F77_DBLE *BETA, - F77_DBLE *Q, - const F77_INT& LDQ, - F77_DBLE *Z, - const F77_INT& LDZ, - F77_INT& M, - F77_DBLE& PL, - F77_DBLE& PR, - F77_DBLE *DIF, - F77_DBLE *WORK, - const F77_INT& LWORK, - F77_INT *IWORK, - const F77_INT& LIWORK, - F77_INT& INFO); - - F77_RET_T - F77_FUNC (ztgsen, ZTGSEN) (const F77_INT& IJOB, - const F77_LOGICAL& WANTQ, - const F77_LOGICAL& WANTZ, - const F77_LOGICAL *SELECT, - const F77_INT& N, - F77_DBLE_CMPLX *A, - const F77_INT& LDA, - F77_DBLE_CMPLX *B, - const F77_INT& LDB, - F77_DBLE_CMPLX *ALPHA, - F77_DBLE_CMPLX *BETA, - F77_DBLE_CMPLX *Q, - const F77_INT& LDQ, - F77_DBLE_CMPLX *Z, - const F77_INT& LDZ, - F77_INT& M, - F77_DBLE& PL, - F77_DBLE& PR, - F77_DBLE *DIF, - F77_DBLE_CMPLX *WORK, - const F77_INT& LWORK, - F77_INT *IWORK, - const F77_INT& LIWORK, - F77_INT& INFO); - - // TRCON - - F77_RET_T - F77_FUNC (ctrcon, CTRCON) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_CMPLX *, - const F77_INT&, F77_REAL&, F77_CMPLX *, - F77_REAL *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dtrcon, DTRCON) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_DBLE *, - const F77_INT&, F77_DBLE&, - F77_DBLE *, F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - F77_RET_T - F77_FUNC (strcon, STRCON) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_REAL *, - const F77_INT&, F77_REAL&, - F77_REAL *, F77_INT *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (ztrcon, ZTRCON) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE&, - F77_DBLE_CMPLX *, F77_DBLE *, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // TRSEN - - F77_RET_T - F77_FUNC (ctrsen, CTRSEN) (F77_CONST_CHAR_ARG_DECL, F77_CONST_CHAR_ARG_DECL, - const F77_INT *, const F77_INT&, - F77_CMPLX *, const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, F77_INT&, - F77_REAL&, F77_REAL&, F77_CMPLX *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (dtrsen, DTRSEN) (F77_CONST_CHAR_ARG_DECL, F77_CONST_CHAR_ARG_DECL, - const F77_INT *, const F77_INT&, - F77_DBLE *, const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, F77_DBLE *, - F77_INT&, F77_DBLE&, F77_DBLE&, F77_DBLE *, - const F77_INT&, F77_INT *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (strsen, STRSEN) (F77_CONST_CHAR_ARG_DECL, F77_CONST_CHAR_ARG_DECL, - const F77_INT *, const F77_INT&, - F77_REAL *, const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, F77_REAL *, - F77_INT&, F77_REAL&, F77_REAL&, F77_REAL *, - const F77_INT&, F77_INT *, - const F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (ztrsen, ZTRSEN) (F77_CONST_CHAR_ARG_DECL, F77_CONST_CHAR_ARG_DECL, - const F77_INT *, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, F77_INT&, F77_DBLE&, - F77_DBLE&, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT&); - - // TRSYL - - F77_RET_T - F77_FUNC (ctrsyl, CTRSYL) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_CMPLX *, - const F77_INT&, const F77_CMPLX *, - const F77_INT&, const F77_CMPLX *, - const F77_INT&, F77_REAL&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dtrsyl, DTRSYL) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_DBLE *, - const F77_INT&, const F77_DBLE *, - const F77_INT&, const F77_DBLE *, - const F77_INT&, F77_DBLE&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (strsyl, STRSYL) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_REAL *, - const F77_INT&, const F77_REAL *, - const F77_INT&, const F77_REAL *, - const F77_INT&, F77_REAL&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (ztrsyl, ZTRSYL) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_INT&, const F77_DBLE_CMPLX *, - const F77_INT&, const F77_DBLE_CMPLX *, - const F77_INT&, const F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // TRTRI - - F77_RET_T - F77_FUNC (ctrtri, CTRTRI) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dtrtri, DTRTRI) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (strtri, STRTRI) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_REAL *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (ztrtri, ZTRTRI) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_DBLE_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // TRTRS - - F77_RET_T - F77_FUNC (ctrtrs, CTRTRS) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_CMPLX *, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (dtrtrs, DTRTRS) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_DBLE *, const F77_INT&, F77_DBLE *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (strtrs, STRTRS) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, - const F77_INT&, const F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - F77_RET_T - F77_FUNC (ztrtrs, ZTRTRS) (F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - F77_CONST_CHAR_ARG_DECL, - const F77_INT&, const F77_INT&, - const F77_DBLE_CMPLX *, const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT& - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL - F77_CHAR_ARG_LEN_DECL); - - // UNGHR - - F77_RET_T - F77_FUNC (cunghr, CUNGHR) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - F77_CMPLX *, const F77_INT&, - F77_INT&); - - F77_RET_T - F77_FUNC (zunghr, ZUNGHR) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT&); - // UNGQR - - F77_RET_T - F77_FUNC (cungqr, CUNGQR) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - F77_CMPLX *, const F77_INT&, - F77_INT&); - - F77_RET_T - F77_FUNC (zungqr, ZUNGQR) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, - const F77_INT&, F77_INT&); -} +#include "lapack-proto.h" #endif
--- a/liboctave/numeric/lo-mappers.h +++ b/liboctave/numeric/lo-mappers.h @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////// // -// Copyright (C) 1996-2025 The Octave Project Developers +// Copyright (C) 2025 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. @@ -26,443 +26,8 @@ #if ! defined (octave_lo_mappers_h) #define octave_lo_mappers_h 1 -#include "octave-config.h" +#warning 'header file "lo-mappers.h" is deprecated, use "mappers.h" instead' -#include <cmath> - -#include <limits> - -#include "lo-ieee.h" -#include "oct-cmplx.h" -#include "oct-inttypes-fwd.h" - -OCTAVE_BEGIN_NAMESPACE(octave) - -OCTAVE_BEGIN_NAMESPACE(math) - -extern OCTAVE_API bool isna (double x); -extern OCTAVE_API bool isna (float x); -extern OCTAVE_API bool isna (const Complex& x); -extern OCTAVE_API bool isna (const FloatComplex& x); - -extern OCTAVE_API bool is_NaN_or_NA (const Complex& x); -extern OCTAVE_API bool is_NaN_or_NA (const FloatComplex& x); - -inline double copysign (double x, double y) { return std::copysign (x, y); } -inline float copysign (float x, float y) { return std::copysignf (x, y); } - -inline double signbit (double x) { return std::signbit (x); } -inline float signbit (float x) { return std::signbit (x); } - -// Test for negative sign. -extern OCTAVE_API bool negative_sign (double x); -extern OCTAVE_API bool negative_sign (float x); - -// Test for positive sign. -inline bool positive_sign (double x) { return ! negative_sign (x); } -inline bool positive_sign (float x) { return ! negative_sign (x); } - -extern OCTAVE_API Complex acos (const Complex& x); -extern OCTAVE_API FloatComplex acos (const FloatComplex& x); - -extern OCTAVE_API Complex asin (const Complex& x); -extern OCTAVE_API FloatComplex asin (const FloatComplex& x); - -inline Complex atan (const Complex& x) { return std::atan (x); } -inline FloatComplex atan (const FloatComplex& x) { return std::atan (x); } - -// The C++ standard would normally return a std::complex value for conj -// even when the input is fully real. Octave overrides this. -inline double conj (double x) { return x; } -inline float conj (float x) { return x; } - -template <typename T> -std::complex<T> -conj (const std::complex<T>& x) -{ - return std::conj (x); -} - -inline double log2 (double x) { return std::log2 (x); } -inline float log2 (float x) { return std::log2f (x); } - -extern OCTAVE_API Complex log2 (const Complex& x); -extern OCTAVE_API FloatComplex log2 (const FloatComplex& x); - -extern OCTAVE_API double log2 (double x, int& exp); -extern OCTAVE_API float log2 (float x, int& exp); - -extern OCTAVE_API Complex log2 (const Complex& x, int& exp); -extern OCTAVE_API FloatComplex log2 (const FloatComplex& x, int& exp); - -inline double exp2 (double x) { return std::exp2 (x); } -inline float exp2 (float x) { return std::exp2f (x); } - -template <typename T> -std::complex<T> -ceil (const std::complex<T>& x) -{ - return std::complex<T> (std::ceil (std::real (x)), - std::ceil (std::imag (x))); -} - -template <typename T> -std::complex<T> -trunc (const std::complex<T>& x) -{ - return std::complex<T> (std::trunc (std::real (x)), - std::trunc (std::imag (x))); -} - -// Provide alias for trunc under the more familiar name of fix. -inline double fix (double x) { return std::trunc (x); } -inline float fix (float x) { return std::trunc (x); } - -template <typename T> -std::complex<T> -fix (const std::complex<T>& x) -{ - return trunc (x); -} - -template <typename T> -std::complex<T> -floor (const std::complex<T>& x) -{ - return std::complex<T> (std::floor (std::real (x)), - std::floor (std::imag (x))); -} - -inline double round (double x) { return std::round (x); } -inline float round (float x) { return std::roundf (x); } - -template <typename T> -std::complex<T> -round (const std::complex<T>& x) -{ - return std::complex<T> (round (std::real (x)), round (std::imag (x))); -} - -inline double -roundb (double x) -{ - double t = round (x); - - if (fabs (x - t) == 0.5) - t = 2 * std::trunc (0.5 * t); - - return t; -} - -inline float -roundb (float x) -{ - float t = round (x); - - if (fabsf (x - t) == 0.5f) - t = 2 * std::trunc (0.5f * t); - - return t; -} - -template <typename T> -std::complex<T> -roundb (const std::complex<T>& x) -{ - return std::complex<T> (roundb (std::real (x)), roundb (std::imag (x))); -} - -extern OCTAVE_API double frexp (double x, int *expptr); -extern OCTAVE_API float frexp (float x, int *expptr); - -inline bool isnan (bool) { return false; } -inline bool isnan (char) { return false; } - -inline bool isnan (double x) { return std::isnan (x); } -inline bool isnan (float x) { return std::isnan (x); } - -// FIXME: Do we need the isnan overload for complex? -template <typename T> -bool -isnan (const std::complex<T>& x) -{ - return (isnan (std::real (x)) || isnan (std::imag (x))); -} - -inline bool isfinite (double x) { return std::isfinite (x); } -inline bool isfinite (float x) { return std::isfinite (x); } - -// FIXME: Do we need isfinite overload for complex? -template <typename T> -bool -isfinite (const std::complex<T>& x) -{ - return (isfinite (std::real (x)) && isfinite (std::imag (x))); -} - -inline bool isinf (double x) { return std::isinf (x); } -inline bool isinf (float x) { return std::isinf (x); } - -template <typename T> -bool -isinf (const octave_int<T>&) -{ - return false; -} - -// FIXME: Do we need isinf overload for complex? -template <typename T> -bool -isinf (const std::complex<T>& x) -{ - return (isinf (std::real (x)) || isinf (std::imag (x))); -} - -// Some useful tests, that are commonly repeated. -// Test for a finite integer. - -// FIXME: Benchmark whether trunc might be faster than round here. -inline bool isinteger (double x) { return isfinite (x) && x == round (x); } -inline bool isinteger (float x) { return isfinite (x) && x == round (x); } - -inline double -signum (double x) -{ - double tmp = 0.0; - - if (x < 0.0) - tmp = -1.0; - else if (x > 0.0) - tmp = 1.0; - - return isnan (x) ? numeric_limits<double>::NaN () : tmp; -} - -inline float -signum (float x) -{ - float tmp = 0.0f; - - if (x < 0.0f) - tmp = -1.0f; - else if (x > 0.0f) - tmp = 1.0f; - - return isnan (x) ? numeric_limits<float>::NaN () : tmp; -} - -template <typename T> -std::complex<T> -signum (const std::complex<T>& x) -{ - T tmp = abs (x); - - return tmp == 0 ? 0.0 : x / tmp; -} - -// Convert X to the nearest integer value. Should not pass NaN to -// this function. - -// For integer types? Hmm. Need to be sure T is an integer type... -template <typename T> -T -x_nint (T x) -{ - return x; -} - -template <> -inline double x_nint (double x) -{ - return (isfinite (x) ? std::floor (x + 0.5) : x); -} - -template <> -inline float x_nint (float x) -{ - return (isfinite (x) ? std::floor (x + 0.5f) : x); -} - -extern OCTAVE_API octave_idx_type nint_big (double x); -extern OCTAVE_API octave_idx_type nint_big (float x); - -extern OCTAVE_API int nint (double x); -extern OCTAVE_API int nint (float x); - -template <typename T> -T -mod (T x, T y) -{ - T retval; - - if (y == 0) - retval = x; - else - { - T q = x / y; - - if (x_nint (y) != y - && (std::abs ((q - x_nint (q)) / x_nint (q)) - < std::numeric_limits<T>::epsilon ())) - retval = 0; - else - { - T n = std::floor (q); - - // Prevent use of extra precision. - T tmp = y * n; - - retval = x - tmp; - } - } - - if (x != y && y != 0) - retval = copysign (retval, y); - - return retval; -} - -template <typename T> -T -rem (T x, T y) -{ - T retval; - - if (y == 0) - retval = numeric_limits<T>::NaN (); - else - { - T q = x / y; - - if (x_nint (y) != y - && (std::abs ((q - x_nint (q)) / x_nint (q)) - < std::numeric_limits<T>::epsilon ())) - retval = 0; - else - { - T n = std::trunc (q); - - // Prevent use of extra precision. - T tmp = y * n; - - retval = x - tmp; - } - } - - if (x != y && y != 0) - retval = copysign (retval, x); - - return retval; -} - -// Generic min, max definitions -template <typename T> -T -min (T x, T y) -{ - return x <= y ? x : y; -} - -template <typename T> -T -max (T x, T y) -{ - return x >= y ? x : y; -} - -// This form is favorable. GCC will translate (x <= y ? x : y) without a -// jump, hence the only conditional jump involved will be the first -// (isnan), infrequent and hence friendly to branch prediction. - -inline double -min (double x, double y) -{ - return isnan (y) ? x : (x <= y ? x : y); -} - -inline double -max (double x, double y) -{ - return isnan (y) ? x : (x >= y ? x : y); -} - -inline float -min (float x, float y) -{ - return isnan (y) ? x : (x <= y ? x : y); -} - -inline float -max (float x, float y) -{ - return isnan (y) ? x : (x >= y ? x : y); -} - -inline std::complex<double> -min (const std::complex<double>& x, const std::complex<double>& y) -{ - return abs (x) <= abs (y) ? x : (isnan (x) ? x : y); -} - -inline std::complex<float> -min (const std::complex<float>& x, const std::complex<float>& y) -{ - return abs (x) <= abs (y) ? x : (isnan (x) ? x : y); -} - -inline std::complex<double> -max (const std::complex<double>& x, const std::complex<double>& y) -{ - return abs (x) >= abs (y) ? x : (isnan (x) ? x : y); -} - -inline std::complex<float> -max (const std::complex<float>& x, const std::complex<float>& y) -{ - return abs (x) >= abs (y) ? x : (isnan (x) ? x : y); -} - -template <typename T> -inline octave_int<T> -min (const octave_int<T>& x, const octave_int<T>& y) -{ - return xmin (x, y); -} - -template <typename T> -inline octave_int<T> -max (const octave_int<T>& x, const octave_int<T>& y) -{ - return xmax (x, y); -} - -// These map reals to Complex. - -extern OCTAVE_API Complex rc_acos (double); -extern OCTAVE_API FloatComplex rc_acos (float); - -extern OCTAVE_API Complex rc_acosh (double); -extern OCTAVE_API FloatComplex rc_acosh (float); - -extern OCTAVE_API Complex rc_asin (double); -extern OCTAVE_API FloatComplex rc_asin (float); - -extern OCTAVE_API Complex rc_atanh (double); -extern OCTAVE_API FloatComplex rc_atanh (float); - -extern OCTAVE_API Complex rc_log (double); -extern OCTAVE_API FloatComplex rc_log (float); - -extern OCTAVE_API Complex rc_log2 (double); -extern OCTAVE_API FloatComplex rc_log2 (float); - -extern OCTAVE_API Complex rc_log10 (double); -extern OCTAVE_API FloatComplex rc_log10 (float); - -extern OCTAVE_API Complex rc_sqrt (double); -extern OCTAVE_API FloatComplex rc_sqrt (float); - -OCTAVE_END_NAMESPACE(math) -OCTAVE_END_NAMESPACE(octave) +#include "mappers.h" #endif
--- a/liboctave/numeric/lo-qrupdate-proto.h +++ b/liboctave/numeric/lo-qrupdate-proto.h @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////// // -// Copyright (C) 2016-2025 The Octave Project Developers +// Copyright (C) 2025 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. @@ -26,359 +26,8 @@ #if ! defined (octave_lo_qrupdate_proto_h) #define octave_lo_qrupdate_proto_h 1 -#include "octave-config.h" +#warning 'header file "lo-qrupdate-proto.h" is deprecated, use "qrupdate-proto.h" instead' -#include "f77-fcn.h" - -extern "C" -{ - -#if defined (HAVE_QRUPDATE) - - // CH1DN - - F77_RET_T - F77_FUNC (cch1dn, CCH1DN) (const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - F77_REAL *, F77_INT&); - - F77_RET_T - F77_FUNC (dch1dn, DCH1DN) (const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, - F77_DBLE *, F77_INT&); - - F77_RET_T - F77_FUNC (sch1dn, SCH1DN) (const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, - F77_REAL *, F77_INT&); - - F77_RET_T - F77_FUNC (zch1dn, ZCH1DN) (const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - F77_DBLE *, F77_INT&); - - // CH1UP - - F77_RET_T - F77_FUNC (cch1up, CCH1UP) (const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, F77_REAL *); - - F77_RET_T - F77_FUNC (dch1up, DCH1UP) (const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, F77_DBLE *); - - F77_RET_T - F77_FUNC (sch1up, SCH1UP) (const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, F77_REAL *); - - F77_RET_T - F77_FUNC (zch1up, ZCH1UP) (const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, F77_DBLE *); - - // CHDEX - - F77_RET_T - F77_FUNC (dchdex, DCHDEX) (const F77_INT&, F77_DBLE *, - const F77_INT&, const F77_INT&, - F77_DBLE *); - - F77_RET_T - F77_FUNC (schdex, SCHDEX) (const F77_INT&, F77_REAL *, - const F77_INT&, const F77_INT&, - F77_REAL *); - - F77_RET_T - F77_FUNC (cchdex, CCHDEX) (const F77_INT&, F77_CMPLX *, - const F77_INT&, const F77_INT&, - F77_REAL *); - - F77_RET_T - F77_FUNC (zchdex, ZCHDEX) (const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, const F77_INT&, - F77_DBLE *); - - // CHINX - - F77_RET_T - F77_FUNC (cchinx, CCHINX) (const F77_INT&, F77_CMPLX *, - const F77_INT&, const F77_INT&, - F77_CMPLX *, F77_REAL *, F77_INT&); - - F77_RET_T - F77_FUNC (dchinx, DCHINX) (const F77_INT&, F77_DBLE *, - const F77_INT&, const F77_INT&, - F77_DBLE *, F77_DBLE *, F77_INT&); - - F77_RET_T - F77_FUNC (schinx, SCHINX) (const F77_INT&, F77_REAL *, - const F77_INT&, const F77_INT&, - F77_REAL *, F77_REAL *, F77_INT&); - - F77_RET_T - F77_FUNC (zchinx, ZCHINX) (const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, F77_DBLE *, F77_INT&); - - // CHSHX - - F77_RET_T - F77_FUNC (cchshx, CCHSHX) (const F77_INT&, F77_CMPLX *, - const F77_INT&, const F77_INT&, - const F77_INT&, F77_CMPLX *, F77_REAL *); - - F77_RET_T - F77_FUNC (dchshx, DCHSHX) (const F77_INT&, F77_DBLE *, - const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE *); - - F77_RET_T - F77_FUNC (schshx, SCHSHX) (const F77_INT&, F77_REAL *, - const F77_INT&, const F77_INT&, - const F77_INT&, F77_REAL *); - - F77_RET_T - F77_FUNC (zchshx, ZCHSHX) (const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE_CMPLX *, F77_DBLE *); - - // QR1UP - - F77_RET_T - F77_FUNC (cqr1up, CQR1UP) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - F77_CMPLX *, F77_CMPLX *, F77_REAL *); - - F77_RET_T - F77_FUNC (dqr1up, DQR1UP) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, F77_DBLE *, F77_DBLE *); - - F77_RET_T - F77_FUNC (sqr1up, SQR1UP) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, F77_REAL *, F77_REAL *); - - F77_RET_T - F77_FUNC (zqr1up, ZQR1UP) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - F77_DBLE_CMPLX *, F77_DBLE_CMPLX *, F77_DBLE *); - - // QRDEC - - F77_RET_T - F77_FUNC (cqrdec, CQRDEC) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, const F77_INT&, - F77_REAL *); - - F77_RET_T - F77_FUNC (dqrdec, DQRDEC) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, const F77_INT&, - F77_DBLE *); - - F77_RET_T - F77_FUNC (sqrdec, SQRDEC) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, const F77_INT&, - F77_REAL *); - - F77_RET_T - F77_FUNC (zqrdec, ZQRDEC) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, const F77_INT&, - F77_DBLE *); - - // QRDER - - F77_RET_T - F77_FUNC (cqrder, CQRDER) (const F77_INT&, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, const F77_INT&, - const F77_INT&, F77_CMPLX *, F77_REAL *); - - F77_RET_T - F77_FUNC (dqrder, DQRDER) (const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_DBLE *, const F77_INT&, - const F77_INT&, F77_DBLE *); - - F77_RET_T - F77_FUNC (sqrder, SQRDER) (const F77_INT&, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_REAL *, const F77_INT&, - const F77_INT&, F77_REAL *); - - F77_RET_T - F77_FUNC (zqrder, ZQRDER) (const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - const F77_INT&, F77_DBLE_CMPLX *, F77_DBLE *); - - // QRINC - - F77_RET_T - F77_FUNC (cqrinc, CQRINC) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, const F77_INT&, - const F77_CMPLX *, F77_REAL *); - - F77_RET_T - F77_FUNC (dqrinc, DQRINC) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, const F77_INT&, - const F77_DBLE *, F77_DBLE *); - - F77_RET_T - F77_FUNC (sqrinc, SQRINC) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, const F77_INT&, - const F77_REAL *, F77_REAL *); - - F77_RET_T - F77_FUNC (zqrinc, ZQRINC) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, const F77_INT&, - const F77_DBLE_CMPLX *, F77_DBLE *); - - // QRINR - - F77_RET_T - F77_FUNC (cqrinr, CQRINR) (const F77_INT&, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, const F77_INT&, - const F77_INT&, const F77_CMPLX *, - F77_REAL *); - - F77_RET_T - F77_FUNC (dqrinr, DQRINR) (const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_DBLE *, const F77_INT&, - const F77_INT&, const F77_DBLE *, - F77_DBLE *); - - F77_RET_T - F77_FUNC (sqrinr, SQRINR) (const F77_INT&, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_REAL *, const F77_INT&, - const F77_INT&, const F77_REAL *, - F77_REAL *); - - F77_RET_T - F77_FUNC (zqrinr, ZQRINR) (const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - const F77_INT&, const F77_DBLE_CMPLX *, - F77_DBLE *); - - // QRSHC - - F77_RET_T - F77_FUNC (cqrshc, CQRSHC) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_CMPLX *, - const F77_INT&, F77_CMPLX *, - const F77_INT&, const F77_INT&, - const F77_INT&, - F77_CMPLX *, F77_REAL *); - F77_RET_T - F77_FUNC (dqrshc, DQRSHC) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE *, - const F77_INT&, F77_DBLE *, - const F77_INT&, const F77_INT&, - const F77_INT&, - F77_DBLE *); - - F77_RET_T - F77_FUNC (sqrshc, SQRSHC) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_REAL *, - const F77_INT&, F77_REAL *, - const F77_INT&, const F77_INT&, - const F77_INT&, - F77_REAL *); - - F77_RET_T - F77_FUNC (zqrshc, ZQRSHC) (const F77_INT&, const F77_INT&, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, F77_DBLE_CMPLX *, - const F77_INT&, const F77_INT&, - const F77_INT&, - F77_DBLE_CMPLX *, F77_DBLE *); +#include "qrupdate-proto.h" #endif - -#if defined (HAVE_QRUPDATE_LUU) - - // LU1UP - - F77_RET_T - F77_FUNC (clu1up, CLU1UP) (const F77_INT&, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, F77_CMPLX *); - - F77_RET_T - F77_FUNC (dlu1up, DLU1UP) (const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_DBLE *, F77_DBLE *); - - F77_RET_T - F77_FUNC (slu1up, SLU1UP) (const F77_INT&, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_REAL *, F77_REAL *); - - F77_RET_T - F77_FUNC (zlu1up, ZLU1UP) (const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, F77_DBLE_CMPLX *); - - // LUP1UP - - F77_RET_T - F77_FUNC (clup1up, CLUP1UP) (const F77_INT&, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_CMPLX *, const F77_INT&, - F77_INT *, const F77_CMPLX *, - const F77_CMPLX *, F77_CMPLX *); - F77_RET_T - F77_FUNC (dlup1up, DLUP1UP) (const F77_INT&, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_DBLE *, const F77_INT&, - F77_INT *, const F77_DBLE *, - const F77_DBLE *, F77_DBLE *); - - F77_RET_T - F77_FUNC (slup1up, SLUP1UP) (const F77_INT&, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_REAL *, const F77_INT&, - F77_INT *, const F77_REAL *, - const F77_REAL *, F77_REAL *); - - F77_RET_T - F77_FUNC (zlup1up, ZLUP1UP) (const F77_INT&, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_DBLE_CMPLX *, const F77_INT&, - F77_INT *, const F77_DBLE_CMPLX *, - const F77_DBLE_CMPLX *, F77_DBLE_CMPLX *); - -#endif - -} - -#endif
--- a/liboctave/numeric/lo-ranlib-proto.h +++ b/liboctave/numeric/lo-ranlib-proto.h @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////// // -// Copyright (C) 2016-2025 The Octave Project Developers +// Copyright (C) 2025 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. @@ -26,53 +26,8 @@ #if ! defined (octave_lo_ranlib_proto_h) #define octave_lo_ranlib_proto_h 1 -#include "octave-config.h" +#warning 'header file "lo-ranlib-proto.h" is deprecated, use "ranlib-proto.h" instead' -#include "f77-fcn.h" - -extern "C" -{ - F77_RET_T - F77_FUNC (dgenexp, DGENEXP) (const F77_DBLE&, F77_DBLE&); - - F77_RET_T - F77_FUNC (dgengam, DGENGAM) (const F77_DBLE&, const F77_DBLE&, F77_DBLE&); - - F77_RET_T - F77_FUNC (dgennor, DGENNOR) (const F77_DBLE&, const F77_DBLE&, F77_DBLE&); - - F77_RET_T - F77_FUNC (dgenunf, DGENUNF) (const F77_DBLE&, const F77_DBLE&, F77_DBLE&); - - F77_RET_T - F77_FUNC (dignpoi, DIGNPOI) (const F77_DBLE&, F77_DBLE&); - - F77_RET_T - F77_FUNC (fgenexp, FGENEXP) (const F77_REAL&, F77_REAL&); - - F77_RET_T - F77_FUNC (fgengam, FGENGAM) (const F77_REAL&, const F77_REAL&, F77_REAL&); - - F77_RET_T - F77_FUNC (fgennor, FGENNOR) (const F77_REAL&, const F77_REAL&, F77_REAL&); - - F77_RET_T - F77_FUNC (fgenunf, FGENUNF) (const F77_REAL&, const F77_REAL&, F77_REAL&); - - F77_RET_T - F77_FUNC (fignpoi, FIGNPOI) (const F77_REAL&, F77_REAL&); - - F77_RET_T - F77_FUNC (getsd, GETSD) (F77_INT4&, F77_INT4&); - - F77_RET_T - F77_FUNC (setall, SETALL) (const F77_INT4&, const F77_INT4&); - - F77_RET_T - F77_FUNC (setcgn, SETCGN) (const F77_INT4&); - - F77_RET_T - F77_FUNC (setsd, SETSD) (const F77_INT4&, const F77_INT4&); -} +#include "ranlib-proto.h" #endif
--- a/liboctave/numeric/lo-slatec-proto.h +++ b/liboctave/numeric/lo-slatec-proto.h @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////// // -// Copyright (C) 2016-2025 The Octave Project Developers +// Copyright (C) 2025 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. @@ -26,37 +26,8 @@ #if ! defined (octave_lo_slatec_proto_h) #define octave_lo_slatec_proto_h 1 -#include "octave-config.h" +#warning 'header file "lo-slatec-proto.h" is deprecated, use "slatec-proto.h" instead' -#include "f77-fcn.h" - -extern "C" -{ - // PCHIM - - F77_RET_T - F77_FUNC (dpchim, DPCHIM) (const F77_INT& n, const F77_DBLE *x, - const F77_DBLE *f, F77_DBLE *d, - const F77_INT& incfd, - F77_INT& ierr); - - F77_RET_T - F77_FUNC (pchim, PCHIM) (const F77_INT& n, const F77_REAL *x, - const F77_REAL *f, F77_REAL *d, - const F77_INT& incfd, - F77_INT& ierr); - - // PSIFN - - F77_RET_T - F77_FUNC (psifn, PSIFN) (const F77_REAL&, const F77_INT&, - const F77_INT&, const F77_INT&, - F77_REAL&, F77_INT&, F77_INT&); - - F77_RET_T - F77_FUNC (dpsifn, DPSIFN) (const F77_DBLE&, const F77_INT&, - const F77_INT&, const F77_INT&, - F77_DBLE&, F77_INT&, F77_INT&); -} +#include "slatec-proto.h" #endif
--- a/liboctave/numeric/lo-specfun.h +++ b/liboctave/numeric/lo-specfun.h @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////// // -// Copyright (C) 1996-2025 The Octave Project Developers +// Copyright (C) 2025 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. @@ -26,335 +26,8 @@ #if ! defined (octave_lo_specfun_h) #define octave_lo_specfun_h 1 -#include "octave-config.h" +#warning 'header file "lo-specfun.h" is deprecated, use "oct-specfun.h" instead' -#include "mx-fwd.h" - -#include "Array-oct.h" -#include "oct-cmplx.h" - -OCTAVE_BEGIN_NAMESPACE(octave) - -OCTAVE_BEGIN_NAMESPACE(math) - -inline double acosh (double x) { return std::acosh (x); } -inline float acosh (float x) { return std::acoshf (x); } -inline Complex acosh (const Complex& x) { return std::acosh (x); } -inline FloatComplex acosh (const FloatComplex& x) { return std::acosh (x); } - -extern OCTAVE_API Complex airy (const Complex& z, bool deriv, bool scaled, - octave_idx_type& ierr); -extern OCTAVE_API ComplexMatrix airy (const ComplexMatrix& z, bool deriv, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray airy (const ComplexNDArray& z, bool deriv, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplex airy (const FloatComplex& z, bool deriv, - bool scaled, octave_idx_type& ierr); -extern OCTAVE_API FloatComplexMatrix airy (const FloatComplexMatrix& z, - bool deriv, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray airy (const FloatComplexNDArray& z, - bool deriv, bool scaled, Array<octave_idx_type>& ierr); - -inline double asinh (double x) { return std::asinh (x); } -inline float asinh (float x) { return std::asinhf (x); } -inline Complex asinh (const Complex& x) { return std::asinh (x); } -inline FloatComplex asinh (const FloatComplex& x) { return std::asinh (x); } - -inline double atanh (double x) { return std::atanh (x); } -inline float atanh (float x) { return std::atanhf (x); } -inline Complex atanh (const Complex& x) { return std::atanh (x); } -inline FloatComplex atanh (const FloatComplex& x) { return std::atanh (x); } - -extern OCTAVE_API Complex besselj (double alpha, const Complex& x, bool scaled, - octave_idx_type& ierr); -extern OCTAVE_API Complex bessely (double alpha, const Complex& x, bool scaled, - octave_idx_type& ierr); -extern OCTAVE_API Complex besseli (double alpha, const Complex& x, bool scaled, - octave_idx_type& ierr); -extern OCTAVE_API Complex besselk (double alpha, const Complex& x, bool scaled, - octave_idx_type& ierr); -extern OCTAVE_API Complex besselh1 (double alpha, const Complex& x, bool scaled, - octave_idx_type& ierr); -extern OCTAVE_API Complex besselh2 (double alpha, const Complex& x, bool scaled, - octave_idx_type& ierr); - -extern OCTAVE_API ComplexMatrix besselj (double alpha, const ComplexMatrix& x, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix bessely (double alpha, const ComplexMatrix& x, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besseli (double alpha, const ComplexMatrix& x, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besselk (double alpha, const ComplexMatrix& x, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besselh1 (double alpha, const ComplexMatrix& x, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besselh2 (double alpha, const ComplexMatrix& x, - bool scaled, Array<octave_idx_type>& ierr); - -extern OCTAVE_API ComplexMatrix besselj (const Matrix& alpha, const Complex& x, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix bessely (const Matrix& alpha, const Complex& x, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besseli (const Matrix& alpha, const Complex& x, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besselk (const Matrix& alpha, const Complex& x, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besselh1 (const Matrix& alpha, const Complex& x, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besselh2 (const Matrix& alpha, const Complex& x, - bool scaled, Array<octave_idx_type>& ierr); - -extern OCTAVE_API ComplexMatrix besselj (const Matrix& alpha, - const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix bessely (const Matrix& alpha, - const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besseli (const Matrix& alpha, - const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besselk (const Matrix& alpha, - const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besselh1 (const Matrix& alpha, - const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besselh2 (const Matrix& alpha, - const ComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); - -extern OCTAVE_API ComplexNDArray besselj (double alpha, const ComplexNDArray& x, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray bessely (double alpha, const ComplexNDArray& x, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray besseli (double alpha, const ComplexNDArray& x, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray besselk (double alpha, const ComplexNDArray& x, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray besselh1 (double alpha, - const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray besselh2 (double alpha, - const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); - -extern OCTAVE_API ComplexNDArray besselj (const NDArray& alpha, - const Complex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray bessely (const NDArray& alpha, - const Complex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray besseli (const NDArray& alpha, - const Complex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray besselk (const NDArray& alpha, - const Complex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray besselh1 (const NDArray& alpha, - const Complex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray besselh2 (const NDArray& alpha, - const Complex& x, bool scaled, Array<octave_idx_type>& ierr); - -extern OCTAVE_API ComplexNDArray besselj (const NDArray& alpha, - const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray bessely (const NDArray& alpha, - const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray besseli (const NDArray& alpha, - const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray besselk (const NDArray& alpha, - const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray besselh1 (const NDArray& alpha, - const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray besselh2 (const NDArray& alpha, - const ComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); - -extern OCTAVE_API ComplexMatrix besselj (const RowVector& alpha, - const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix bessely (const RowVector& alpha, - const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besseli (const RowVector& alpha, - const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besselk (const RowVector& alpha, - const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besselh1 (const RowVector& alpha, - const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexMatrix besselh2 (const RowVector& alpha, - const ComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr); - -extern OCTAVE_API FloatComplex besselj (float alpha, const FloatComplex& x, - bool scaled, octave_idx_type& ierr); -extern OCTAVE_API FloatComplex bessely (float alpha, const FloatComplex& x, - bool scaled, octave_idx_type& ierr); -extern OCTAVE_API FloatComplex besseli (float alpha, const FloatComplex& x, - bool scaled, octave_idx_type& ierr); -extern OCTAVE_API FloatComplex besselk (float alpha, const FloatComplex& x, - bool scaled, octave_idx_type& ierr); -extern OCTAVE_API FloatComplex besselh1 (float alpha, const FloatComplex& x, - bool scaled, octave_idx_type& ierr); -extern OCTAVE_API FloatComplex besselh2 (float alpha, const FloatComplex& x, - bool scaled, octave_idx_type& ierr); - -extern OCTAVE_API FloatComplexMatrix besselj (float alpha, - const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix bessely (float alpha, - const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besseli (float alpha, - const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besselk (float alpha, - const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besselh1 (float alpha, - const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besselh2 (float alpha, - const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); - -extern OCTAVE_API FloatComplexMatrix besselj (const FloatMatrix& alpha, - const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix bessely (const FloatMatrix& alpha, - const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besseli (const FloatMatrix& alpha, - const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besselk (const FloatMatrix& alpha, - const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besselh1 (const FloatMatrix& alpha, - const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besselh2 (const FloatMatrix& alpha, - const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr); - -extern OCTAVE_API FloatComplexMatrix besselj (const FloatMatrix& alpha, - const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix bessely (const FloatMatrix& alpha, - const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besseli (const FloatMatrix& alpha, - const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besselk (const FloatMatrix& alpha, - const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besselh1 (const FloatMatrix& alpha, - const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besselh2 (const FloatMatrix& alpha, - const FloatComplexMatrix& x, bool scaled, Array<octave_idx_type>& ierr); - -extern OCTAVE_API FloatComplexNDArray besselj (float alpha, - const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray bessely (float alpha, - const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray besseli (float alpha, - const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray besselk (float alpha, - const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray besselh1 (float alpha, - const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray besselh2 (float alpha, - const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); - -extern OCTAVE_API FloatComplexNDArray besselj (const FloatNDArray& alpha, - const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray bessely (const FloatNDArray& alpha, - const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray besseli (const FloatNDArray& alpha, - const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray besselk (const FloatNDArray& alpha, - const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray besselh1 (const FloatNDArray& alpha, - const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray besselh2 (const FloatNDArray& alpha, - const FloatComplex& x, bool scaled, Array<octave_idx_type>& ierr); - -extern OCTAVE_API FloatComplexNDArray besselj (const FloatNDArray& alpha, - const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray bessely (const FloatNDArray& alpha, - const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray besseli (const FloatNDArray& alpha, - const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray besselk (const FloatNDArray& alpha, - const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray besselh1 (const FloatNDArray& alpha, - const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray besselh2 (const FloatNDArray& alpha, - const FloatComplexNDArray& x, bool scaled, Array<octave_idx_type>& ierr); - -extern OCTAVE_API FloatComplexMatrix besselj (const FloatRowVector& alpha, - const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix bessely (const FloatRowVector& alpha, - const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besseli (const FloatRowVector& alpha, - const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besselk (const FloatRowVector& alpha, - const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besselh1 (const FloatRowVector& alpha, - const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexMatrix besselh2 (const FloatRowVector& alpha, - const FloatComplexColumnVector& x, bool scaled, Array<octave_idx_type>& ierr); - -extern OCTAVE_API Complex biry (const Complex& z, bool deriv, bool scaled, - octave_idx_type& ierr); -extern OCTAVE_API ComplexMatrix biry (const ComplexMatrix& z, bool deriv, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API ComplexNDArray biry (const ComplexNDArray& z, bool deriv, - bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplex biry (const FloatComplex& z, bool deriv, - bool scaled, octave_idx_type& ierr); -extern OCTAVE_API FloatComplexMatrix biry (const FloatComplexMatrix& z, - bool deriv, bool scaled, Array<octave_idx_type>& ierr); -extern OCTAVE_API FloatComplexNDArray biry (const FloatComplexNDArray& z, - bool deriv, bool scaled, Array<octave_idx_type>& ierr); - -inline double cbrt (double x) { return std::cbrt (x); } -inline float cbrt (float x) { return std::cbrtf (x); } - -extern OCTAVE_API double dawson (double x); -extern OCTAVE_API float dawson (float x); -extern OCTAVE_API Complex dawson (const Complex& x); -extern OCTAVE_API FloatComplex dawson (const FloatComplex& x); - -extern OCTAVE_API void ellipj (double u, double m, double& sn, double& cn, - double& dn, double& err); -extern OCTAVE_API void ellipj (const Complex& u, double m, Complex& sn, - Complex& cn, Complex& dn, double& err); - -inline double erf (double x) { return std::erf (x); } -inline float erf (float x) { return std::erff (x); } -extern OCTAVE_API Complex erf (const Complex& x); -extern OCTAVE_API FloatComplex erf (const FloatComplex& x); - -inline double erfc (double x) { return std::erfc (x); } -inline float erfc (float x) { return std::erfcf (x); } -extern OCTAVE_API Complex erfc (const Complex& x); -extern OCTAVE_API FloatComplex erfc (const FloatComplex& x); - -extern OCTAVE_API double erfcinv (double x); -extern OCTAVE_API float erfcinv (float x); - -extern OCTAVE_API double erfcx (double x); -extern OCTAVE_API float erfcx (float x); -extern OCTAVE_API Complex erfcx (const Complex& x); -extern OCTAVE_API FloatComplex erfcx (const FloatComplex& x); - -extern OCTAVE_API double erfi (double x); -extern OCTAVE_API float erfi (float x); -extern OCTAVE_API Complex erfi (const Complex& x); -extern OCTAVE_API FloatComplex erfi (const FloatComplex& x); - -extern OCTAVE_API double erfinv (double x); -extern OCTAVE_API float erfinv (float x); - -inline double expm1 (double x) { return std::expm1 (x); } -inline float expm1 (float x) { return std::expm1f (x); } -extern OCTAVE_API Complex expm1 (const Complex& x); -extern OCTAVE_API FloatComplex expm1 (const FloatComplex& x); - -extern OCTAVE_API double gamma (double x); -extern OCTAVE_API float gamma (float x); - -inline double lgamma (double x) { return std::lgamma (x); } -inline float lgamma (float x) { return std::lgammaf (x); } - -inline double log1p (double x) { return std::log1p (x); } -inline float log1p (float x) { return std::log1pf (x); } -extern OCTAVE_API Complex log1p (const Complex& x); -extern OCTAVE_API FloatComplex log1p (const FloatComplex& x); - -extern OCTAVE_API double psi (double x); -extern OCTAVE_API float psi (float x); -extern OCTAVE_API Complex psi (const Complex& x); -extern OCTAVE_API FloatComplex psi (const FloatComplex& x); -extern OCTAVE_API double psi (octave_idx_type n, double z); -extern OCTAVE_API float psi (octave_idx_type n, float z); - -extern OCTAVE_API Complex rc_lgamma (double x); -extern OCTAVE_API FloatComplex rc_lgamma (float x); - -extern OCTAVE_API Complex rc_log1p (double x); -extern OCTAVE_API FloatComplex rc_log1p (float x); - -OCTAVE_END_NAMESPACE(math) -OCTAVE_END_NAMESPACE(octave) +#include "oct-specfun.h" #endif
--- a/liboctave/numeric/lu.cc +++ b/liboctave/numeric/lu.cc @@ -38,14 +38,13 @@ #include "fCMatrix.h" #include "fColVector.h" #include "fMatrix.h" -#include "lo-error.h" -#include "lo-lapack-proto.h" -#include "lo-qrupdate-proto.h" +#include "lapack-proto.h" #include "lu.h" +#include "oct-error.h" #include "oct-locbuf.h" +#include "qrupdate-proto.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) // FIXME: PermMatrix::col_perm_vec returns Array<octave_idx_type>
--- a/liboctave/numeric/lu.h +++ b/liboctave/numeric/lu.h @@ -33,7 +33,6 @@ #include "Array-oct.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <typename T>
rename from liboctave/numeric/lo-mappers.cc rename to liboctave/numeric/mappers.cc --- a/liboctave/numeric/lo-mappers.cc +++ b/liboctave/numeric/mappers.cc @@ -27,20 +27,19 @@ # include "config.h" #endif -#include "lo-mappers.h" -#include "lo-specfun.h" +#include "mappers.h" #include "math-wrappers.h" +#include "oct-specfun.h" // FIXME: We used to have this situation: // // Functions that forward to gnulib belong here so we can keep -// gnulib:: out of lo-mappers.h. +// gnulib:: out of mappers.h. // // but now we just use std:: and explicit wrappers in C++ code so maybe // some of the forwarding functions can be defined inline here. OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) bool
copy from liboctave/numeric/lo-mappers.h copy to liboctave/numeric/mappers.h --- a/liboctave/numeric/lo-mappers.h +++ b/liboctave/numeric/mappers.h @@ -23,8 +23,8 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_mappers_h) -#define octave_lo_mappers_h 1 +#if ! defined (octave_oct_mappers_h) +#define octave_oct_mappers_h 1 #include "octave-config.h" @@ -37,7 +37,6 @@ #include "oct-inttypes-fwd.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) extern OCTAVE_API bool isna (double x);
--- a/liboctave/numeric/module.mk +++ b/liboctave/numeric/module.mk @@ -18,7 +18,6 @@ %reldir%/DASSL.h \ %reldir%/DET.h \ %reldir%/EIG.h \ - %reldir%/gsvd.h \ %reldir%/LSODE.h \ %reldir%/ODE.h \ %reldir%/ODEFunc.h \ @@ -26,15 +25,20 @@ %reldir%/ODESFunc.h \ %reldir%/Quad.h \ %reldir%/aepbalance.h \ + %reldir%/amos-proto.h \ + %reldir%/arpack-proto.h \ %reldir%/base-dae.h \ %reldir%/base-de.h \ + %reldir%/blas-proto.h \ %reldir%/bsxfun-decl.h \ %reldir%/bsxfun.h \ %reldir%/chol.h \ %reldir%/eigs-base.h \ %reldir%/fEIG.h \ %reldir%/gepbalance.h \ + %reldir%/gsvd.h \ %reldir%/hess.h \ + %reldir%/lapack-proto.h \ %reldir%/lo-amos-proto.h \ %reldir%/lo-arpack-proto.h \ %reldir%/lo-blas-proto.h \ @@ -45,17 +49,22 @@ %reldir%/lo-slatec-proto.h \ %reldir%/lo-specfun.h \ %reldir%/lu.h \ + %reldir%/mappers.h \ %reldir%/oct-convn.h \ %reldir%/oct-fftw.h \ %reldir%/oct-norm.h \ %reldir%/oct-rand.h \ + %reldir%/oct-specfun.h \ %reldir%/oct-spparms.h \ %reldir%/qr.h \ %reldir%/qrp.h \ + %reldir%/qrupdate-proto.h \ %reldir%/randgamma.h \ %reldir%/randmtzig.h \ %reldir%/randpoisson.h \ + %reldir%/ranlib-proto.h \ %reldir%/schur.h \ + %reldir%/slatec-proto.h \ %reldir%/sparse-chol.h \ %reldir%/sparse-dmsolve.h \ %reldir%/sparse-lu.h \ @@ -78,13 +87,13 @@ %reldir%/fEIG.cc \ %reldir%/gepbalance.cc \ %reldir%/hess.cc \ - %reldir%/lo-mappers.cc \ - %reldir%/lo-specfun.cc \ %reldir%/lu.cc \ + %reldir%/mappers.cc \ %reldir%/oct-convn.cc \ %reldir%/oct-fftw.cc \ %reldir%/oct-norm.cc \ %reldir%/oct-rand.cc \ + %reldir%/oct-specfun.cc \ %reldir%/oct-spparms.cc \ %reldir%/qr.cc \ %reldir%/qrp.cc \
--- a/liboctave/numeric/oct-convn.cc +++ b/liboctave/numeric/oct-convn.cc @@ -35,6 +35,7 @@ #include "CNDArray.h" #include "CRowVector.h" #include "MArray.h" +#include "blas-proto.h" #include "dColVector.h" #include "dMatrix.h" #include "dNDArray.h" @@ -48,7 +49,6 @@ #include "fMatrix.h" #include "fNDArray.h" #include "fRowVector.h" -#include "lo-blas-proto.h" #include "oct-convn.h" OCTAVE_BEGIN_NAMESPACE(octave)
--- a/liboctave/numeric/oct-fftw.cc +++ b/liboctave/numeric/oct-fftw.cc @@ -31,7 +31,7 @@ # include <fftw3.h> #endif -#include "lo-error.h" +#include "oct-error.h" #include "oct-fftw.h" #include "oct-locbuf.h" #include "quit.h"
--- a/liboctave/numeric/oct-norm.cc +++ b/liboctave/numeric/oct-norm.cc @@ -51,14 +51,14 @@ #include "fDiagMatrix.h" #include "fMatrix.h" #include "fRowVector.h" -#include "lo-error.h" #include "lo-ieee.h" -#include "lo-mappers.h" +#include "mappers.h" #include "mx-cm-s.h" #include "mx-fcm-fs.h" #include "mx-fs-fcm.h" #include "mx-s-cm.h" #include "oct-cmplx.h" +#include "oct-error.h" #include "oct-norm.h" #include "quit.h" #include "svd.h"
--- a/liboctave/numeric/oct-rand.cc +++ b/liboctave/numeric/oct-rand.cc @@ -31,11 +31,10 @@ #include <limits> -#include "lo-error.h" #include "lo-ieee.h" -#include "lo-mappers.h" -#include "lo-ranlib-proto.h" #include "mach-info.h" +#include "mappers.h" +#include "oct-error.h" #include "oct-locbuf.h" #include "oct-rand.h" #include "oct-time.h" @@ -43,6 +42,7 @@ #include "randgamma.h" #include "randmtzig.h" #include "randpoisson.h" +#include "ranlib-proto.h" #include "singleton-cleanup.h" OCTAVE_BEGIN_NAMESPACE(octave)
rename from liboctave/numeric/lo-specfun.cc rename to liboctave/numeric/oct-specfun.cc --- a/liboctave/numeric/lo-specfun.cc +++ b/liboctave/numeric/oct-specfun.cc @@ -37,6 +37,7 @@ #include "CMatrix.h" #include "CNDArray.h" #include "Faddeeva.hh" +#include "amos-proto.h" #include "dMatrix.h" #include "dNDArray.h" #include "dRowVector.h" @@ -47,16 +48,14 @@ #include "fMatrix.h" #include "fNDArray.h" #include "fRowVector.h" -#include "lo-amos-proto.h" -#include "lo-error.h" #include "lo-ieee.h" -#include "lo-mappers.h" -#include "lo-slatec-proto.h" -#include "lo-specfun.h" +#include "mappers.h" #include "mx-inlines.cc" +#include "oct-error.h" +#include "oct-specfun.h" +#include "slatec-proto.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) static inline Complex
copy from liboctave/numeric/lo-specfun.h copy to liboctave/numeric/oct-specfun.h --- a/liboctave/numeric/lo-specfun.h +++ b/liboctave/numeric/oct-specfun.h @@ -23,8 +23,8 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_specfun_h) -#define octave_lo_specfun_h 1 +#if ! defined (octave_oct_specfun_h) +#define octave_oct_specfun_h 1 #include "octave-config.h" @@ -34,7 +34,6 @@ #include "oct-cmplx.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) inline double acosh (double x) { return std::acosh (x); }
--- a/liboctave/numeric/oct-spparms.cc +++ b/liboctave/numeric/oct-spparms.cc @@ -30,8 +30,8 @@ #include <ostream> #include "Array-oct.h" -#include "lo-error.h" #include "lo-ieee.h" +#include "oct-error.h" #include "oct-spparms.h" #include "singleton-cleanup.h"
--- a/liboctave/numeric/qr.cc +++ b/liboctave/numeric/qr.cc @@ -42,16 +42,15 @@ #include "fColVector.h" #include "fMatrix.h" #include "fRowVector.h" -#include "lo-error.h" -#include "lo-lapack-proto.h" -#include "lo-qrupdate-proto.h" +#include "lapack-proto.h" #include "oct-cmplx.h" +#include "oct-error.h" #include "oct-locbuf.h" #include "oct-sort.h" #include "qr.h" +#include "qrupdate-proto.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <typename T>
--- a/liboctave/numeric/qr.h +++ b/liboctave/numeric/qr.h @@ -31,7 +31,6 @@ #include "Array-fwd.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <typename T>
--- a/liboctave/numeric/qrp.cc +++ b/liboctave/numeric/qrp.cc @@ -37,12 +37,11 @@ #include "fCMatrix.h" #include "fMatrix.h" #include "fRowVector.h" -#include "lo-lapack-proto.h" +#include "lapack-proto.h" #include "oct-locbuf.h" #include "qrp.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) // Specialization.
--- a/liboctave/numeric/qrp.h +++ b/liboctave/numeric/qrp.h @@ -32,7 +32,6 @@ #include "qr.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <typename T>
copy from liboctave/numeric/lo-qrupdate-proto.h copy to liboctave/numeric/qrupdate-proto.h --- a/liboctave/numeric/lo-qrupdate-proto.h +++ b/liboctave/numeric/qrupdate-proto.h @@ -23,8 +23,8 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_qrupdate_proto_h) -#define octave_lo_qrupdate_proto_h 1 +#if ! defined (octave_qrupdate_proto_h) +#define octave_qrupdate_proto_h 1 #include "octave-config.h"
--- a/liboctave/numeric/randgamma.cc +++ b/liboctave/numeric/randgamma.cc @@ -87,7 +87,7 @@ #include <cmath> #include "lo-ieee.h" -#include "lo-mappers.h" +#include "mappers.h" #include "randgamma.h" #include "randmtzig.h"
--- a/liboctave/numeric/randpoisson.cc +++ b/liboctave/numeric/randpoisson.cc @@ -34,9 +34,9 @@ #include <cstddef> #include "f77-fcn.h" -#include "lo-error.h" #include "lo-ieee.h" -#include "lo-mappers.h" +#include "mappers.h" +#include "oct-error.h" #include "randmtzig.h" #include "randpoisson.h"
copy from liboctave/numeric/lo-ranlib-proto.h copy to liboctave/numeric/ranlib-proto.h --- a/liboctave/numeric/lo-ranlib-proto.h +++ b/liboctave/numeric/ranlib-proto.h @@ -23,8 +23,8 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_ranlib_proto_h) -#define octave_lo_ranlib_proto_h 1 +#if ! defined (octave_ranlib_proto_h) +#define octave_ranlib_proto_h 1 #include "octave-config.h"
--- a/liboctave/numeric/schur.cc +++ b/liboctave/numeric/schur.cc @@ -32,13 +32,12 @@ #include "dMatrix.h" #include "fCMatrix.h" #include "fMatrix.h" -#include "lo-error.h" -#include "lo-lapack-proto.h" +#include "lapack-proto.h" +#include "oct-error.h" #include "oct-locbuf.h" #include "schur.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) // For real types.
--- a/liboctave/numeric/schur.h +++ b/liboctave/numeric/schur.h @@ -38,7 +38,6 @@ #include "fMatrix.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <typename T>
copy from liboctave/numeric/lo-slatec-proto.h copy to liboctave/numeric/slatec-proto.h --- a/liboctave/numeric/lo-slatec-proto.h +++ b/liboctave/numeric/slatec-proto.h @@ -23,8 +23,8 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_slatec_proto_h) -#define octave_lo_slatec_proto_h 1 +#if ! defined (octave_slatec_proto_h) +#define octave_slatec_proto_h 1 #include "octave-config.h"
--- a/liboctave/numeric/sparse-chol.cc +++ b/liboctave/numeric/sparse-chol.cc @@ -33,8 +33,8 @@ #include "MatrixType.h" #include "dRowVector.h" #include "dSparse.h" -#include "lo-error.h" #include "oct-cmplx.h" +#include "oct-error.h" #include "oct-sparse.h" #include "oct-spparms.h" #include "quit.h" @@ -42,7 +42,6 @@ #include "sparse-util.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <typename chol_type>
--- a/liboctave/numeric/sparse-chol.h +++ b/liboctave/numeric/sparse-chol.h @@ -35,7 +35,6 @@ #include "CSparse.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) // If the sparse matrix classes become templated on the element type
--- a/liboctave/numeric/sparse-dmsolve.cc +++ b/liboctave/numeric/sparse-dmsolve.cc @@ -35,7 +35,7 @@ #include "MSparse.h" #include "MatrixType.h" #include "dSparse.h" -#include "lo-error.h" +#include "oct-error.h" #include "oct-inttypes-fwd.h" #include "oct-locbuf.h" #include "oct-sort.h"
--- a/liboctave/numeric/sparse-lu.cc +++ b/liboctave/numeric/sparse-lu.cc @@ -30,15 +30,14 @@ #include "CSparse.h" #include "PermMatrix.h" #include "dSparse.h" -#include "lo-error.h" -#include "lo-mappers.h" +#include "mappers.h" +#include "oct-error.h" #include "oct-locbuf.h" #include "oct-sparse.h" #include "oct-spparms.h" #include "sparse-lu.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) // Wrappers for SuiteSparse (formerly UMFPACK) functions that have
--- a/liboctave/numeric/sparse-lu.h +++ b/liboctave/numeric/sparse-lu.h @@ -35,7 +35,6 @@ #include "dSparse.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) // If the sparse matrix classes become templated on the element type
--- a/liboctave/numeric/sparse-qr.cc +++ b/liboctave/numeric/sparse-qr.cc @@ -33,14 +33,13 @@ #include "dColVector.h" #include "dMatrix.h" #include "dSparse.h" -#include "lo-error.h" +#include "oct-error.h" #include "oct-locbuf.h" #include "oct-sparse.h" #include "quit.h" #include "sparse-qr.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) #if defined (HAVE_CXSPARSE)
--- a/liboctave/numeric/sparse-qr.h +++ b/liboctave/numeric/sparse-qr.h @@ -35,7 +35,6 @@ #include "mx-fwd.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) // If the sparse matrix classes become templated on the element type
--- a/liboctave/numeric/svd.cc +++ b/liboctave/numeric/svd.cc @@ -36,8 +36,8 @@ #include "fCMatrix.h" #include "fDiagMatrix.h" #include "fMatrix.h" -#include "lo-error.h" -#include "lo-lapack-proto.h" +#include "lapack-proto.h" +#include "oct-error.h" #include "svd.h" // class to compute optimal work space size (lwork) for DGEJSV and SGEJSV @@ -300,7 +300,6 @@ } OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <typename T>
--- a/liboctave/numeric/svd.h +++ b/liboctave/numeric/svd.h @@ -31,7 +31,6 @@ #include <vector> OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <typename T>
--- a/liboctave/system/dir-ops.cc +++ b/liboctave/system/dir-ops.cc @@ -42,12 +42,11 @@ #include "dir-ops.h" #include "file-ops.h" -#include "lo-error.h" -#include "lo-sysdep.h" +#include "oct-error.h" +#include "oct-sysdep.h" #include "str-vec.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) bool
--- a/liboctave/system/dir-ops.h +++ b/liboctave/system/dir-ops.h @@ -33,7 +33,6 @@ #include "str-vec.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) class OCTAVE_API dir_entry
--- a/liboctave/system/file-ops.cc +++ b/liboctave/system/file-ops.cc @@ -48,10 +48,10 @@ #include "file-ops.h" #include "file-stat.h" #include "gen-tempname-wrapper.h" -#include "lo-sysdep.h" #include "oct-env.h" #include "oct-locbuf.h" #include "oct-password.h" +#include "oct-sysdep.h" #include "quit.h" #include "stat-wrappers.h" #include "str-vec.h" @@ -216,7 +216,6 @@ } OCTAVE_BEGIN_NAMESPACE(sys) - OCTAVE_BEGIN_NAMESPACE(file_ops) char dev_sep_char ()
--- a/liboctave/system/file-ops.h +++ b/liboctave/system/file-ops.h @@ -35,7 +35,6 @@ #include "str-vec.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) OCTAVE_BEGIN_NAMESPACE(file_ops)
--- a/liboctave/system/file-stat.cc +++ b/liboctave/system/file-stat.cc @@ -37,12 +37,11 @@ #include "strmode-wrapper.h" #if defined (OCTAVE_USE_WINDOWS_API) -# include "lo-regexp.h" # include "oct-env.h" +# include "oct-regexp.h" #endif OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) // FIXME: the is_* and mode_as_string functions are only valid
--- a/liboctave/system/file-stat.h +++ b/liboctave/system/file-stat.h @@ -35,7 +35,6 @@ #include <sys/types.h> OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) class OCTAVE_API base_file_stat
--- a/liboctave/system/lo-sysdep.h +++ b/liboctave/system/lo-sysdep.h @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////// // -// Copyright (C) 1996-2025 The Octave Project Developers +// Copyright (C) 2025 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. @@ -26,81 +26,8 @@ #if ! defined (octave_lo_sysdep_h) #define octave_lo_sysdep_h 1 -#include "octave-config.h" +#warning 'header file "lo-sysdep.h" is deprecated, use "oct-sysdep.h" instead' -#include <fstream> -#include <string> - -#include <sys/types.h> - -#include "lo-ieee.h" - -class string_vector; - -OCTAVE_BEGIN_NAMESPACE(octave) - -OCTAVE_BEGIN_NAMESPACE(sys) - -extern OCTAVE_API int system (const std::string& cmd_str); - -extern OCTAVE_API std::string getcwd (); - -extern OCTAVE_API int chdir (const std::string&); - -extern OCTAVE_API bool -get_dirlist (const std::string& dirname, string_vector& dirlist, - std::string& msg); - -extern OCTAVE_API bool -file_exists (const std::string& filename, bool is_dir = true); - -extern OCTAVE_API bool -file_exists (const std::string& filename, bool is_dir, std::string& msg); - -extern OCTAVE_API bool dir_exists (const std::string& dirname); - -extern OCTAVE_API bool -dir_exists (const std::string& dirname, std::string& msg); - -extern OCTAVE_API bool -same_file (const std::string& f, const std::string& g); - -extern OCTAVE_API std::FILE * -fopen (const std::string& name, const std::string& mode); - -extern OCTAVE_API std::FILE * -fopen_tmp (const std::string& name, const std::string& mode); - -extern OCTAVE_API std::fstream -fstream (const std::string& name, - const std::ios::openmode mode = std::ios::in | std::ios::out); - -extern OCTAVE_API std::ifstream -ifstream (const std::string& name, - const std::ios::openmode mode = std::ios::in); - -extern OCTAVE_API std::ofstream -ofstream (const std::string& name, - const std::ios::openmode mode = std::ios::out); - -extern OCTAVE_API void -putenv_wrapper (const std::string& name, const std::string& value); - -extern OCTAVE_API std::string getenv_wrapper (const std::string&); - -extern OCTAVE_API bool isenv_wrapper (const std::string&); - -extern OCTAVE_API int unsetenv_wrapper (const std::string&); - -extern OCTAVE_API std::wstring u8_to_wstring (const std::string&); - -extern OCTAVE_API std::string u8_from_wstring (const std::wstring&); - -extern OCTAVE_API std::string -get_ASCII_filename (const std::string& long_file_name, - const bool allow_locale = false); - -OCTAVE_END_NAMESPACE(sys) -OCTAVE_END_NAMESPACE(octave) +#include "oct-sysdep.h" #endif
--- a/liboctave/system/lo-sysinfo.h +++ b/liboctave/system/lo-sysinfo.h @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////// // -// Copyright (C) 2018-2025 The Octave Project Developers +// Copyright (C) 2025 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. @@ -26,19 +26,8 @@ #if ! defined (octave_lo_sysinfo_h) #define octave_lo_sysinfo_h 1 -#include "octave-config.h" +#warning 'header file "lo-sysinfo.h" is deprecated, use "oct-sysinfo.h" instead' -#include <string> - -OCTAVE_BEGIN_NAMESPACE(octave) - -OCTAVE_BEGIN_NAMESPACE(sys) - -extern OCTAVE_API std::string blas_version (); - -extern OCTAVE_API std::string lapack_version (); - -OCTAVE_END_NAMESPACE(sys) -OCTAVE_END_NAMESPACE(octave) +#include "oct-sysinfo.h" #endif
--- a/liboctave/system/mach-info.cc +++ b/liboctave/system/mach-info.cc @@ -28,8 +28,8 @@ #endif #include "f77-fcn.h" -#include "lo-error.h" #include "mach-info.h" +#include "oct-error.h" extern "C" { @@ -39,7 +39,6 @@ } OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(mach_info) static float_format get_float_format () @@ -87,6 +86,16 @@ return little_endian; } +bool +nan_with_payload () +{ +#if defined (HAVE_QNAN_WITH_PAYLOAD) + return 1; +#else + return 0; +#endif +} + float_format string_to_float_format (const std::string& s) {
--- a/liboctave/system/mach-info.h +++ b/liboctave/system/mach-info.h @@ -31,7 +31,6 @@ #include <string> OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(mach_info) enum float_format @@ -50,6 +49,8 @@ OCTAVE_API bool words_little_endian (); +OCTAVE_API bool nan_with_payload (); + OCTAVE_API float_format string_to_float_format (const std::string&); OCTAVE_API std::string float_format_as_string (float_format);
--- a/liboctave/system/module.mk +++ b/liboctave/system/module.mk @@ -10,6 +10,8 @@ %reldir%/oct-group.h \ %reldir%/oct-password.h \ %reldir%/oct-syscalls.h \ + %reldir%/oct-sysdep.h \ + %reldir%/oct-sysinfo.h \ %reldir%/oct-time.h \ %reldir%/oct-uname.h @@ -19,13 +21,13 @@ %reldir%/dir-ops.cc \ %reldir%/file-ops.cc \ %reldir%/file-stat.cc \ - %reldir%/lo-sysdep.cc \ - %reldir%/lo-sysinfo.cc \ %reldir%/mach-info.cc \ %reldir%/oct-env.cc \ %reldir%/oct-group.cc \ %reldir%/oct-password.cc \ %reldir%/oct-syscalls.cc \ + %reldir%/oct-sysdep.cc \ + %reldir%/oct-sysinfo.cc \ %reldir%/oct-time.cc \ %reldir%/oct-uname.cc
--- a/liboctave/system/oct-env.cc +++ b/liboctave/system/oct-env.cc @@ -50,12 +50,12 @@ #include <string> #include "file-ops.h" -#include "lo-error.h" -#include "lo-sysdep.h" #include "lo-utils.h" #include "oct-env.h" +#include "oct-error.h" #include "oct-password.h" #include "oct-syscalls.h" +#include "oct-sysdep.h" #include "set-program-name-wrapper.h" #include "singleton-cleanup.h" #include "unistd-wrappers.h" @@ -66,7 +66,6 @@ #endif OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) env::env ()
--- a/liboctave/system/oct-env.h +++ b/liboctave/system/oct-env.h @@ -31,7 +31,6 @@ #include <string> OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) class OCTAVE_API env
--- a/liboctave/system/oct-group.cc +++ b/liboctave/system/oct-group.cc @@ -33,7 +33,7 @@ # include <grp.h> #endif -#include "lo-error.h" +#include "oct-error.h" #include "oct-group.h" #include "str-vec.h" @@ -48,7 +48,6 @@ } OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) std::string
--- a/liboctave/system/oct-group.h +++ b/liboctave/system/oct-group.h @@ -35,7 +35,6 @@ #include "str-vec.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) class OCTAVE_API group
--- a/liboctave/system/oct-password.cc +++ b/liboctave/system/oct-password.cc @@ -29,7 +29,7 @@ #include <sys/types.h> -#include "lo-error.h" +#include "oct-error.h" #include "oct-password.h" #include "pwd-wrappers.h" @@ -44,7 +44,6 @@ } OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) std::string
--- a/liboctave/system/oct-password.h +++ b/liboctave/system/oct-password.h @@ -33,7 +33,6 @@ #include <sys/types.h> OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) class OCTAVE_API password
--- a/liboctave/system/oct-syscalls.cc +++ b/liboctave/system/oct-syscalls.cc @@ -33,8 +33,8 @@ #include "fcntl-wrappers.h" #include "lo-utils.h" -#include "lo-sysdep.h" #include "oct-syscalls.h" +#include "oct-sysdep.h" #include "octave-popen2.h" #include "signal-wrappers.h" #include "str-vec.h" @@ -45,7 +45,6 @@ nm ": not supported on this system" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) int
--- a/liboctave/system/oct-syscalls.h +++ b/liboctave/system/oct-syscalls.h @@ -35,7 +35,6 @@ #include <sys/types.h> OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) extern OCTAVE_API int dup2 (int, int);
rename from liboctave/system/lo-sysdep.cc rename to liboctave/system/oct-sysdep.cc --- a/liboctave/system/lo-sysdep.cc +++ b/liboctave/system/oct-sysdep.cc @@ -34,9 +34,9 @@ #include "dir-ops.h" #include "file-ops.h" #include "file-stat.h" -#include "lo-error.h" -#include "lo-sysdep.h" #include "localcharset-wrapper.h" +#include "oct-error.h" +#include "oct-sysdep.h" #include "putenv-wrapper.h" #include "unistd-wrappers.h" #include "unsetenv-wrapper.h" @@ -46,14 +46,13 @@ # include <wchar.h> # include "filepos-wrappers.h" -# include "lo-hash.h" +# include "oct-hash.h" # include "oct-locbuf.h" # include "uniconv-wrappers.h" # include "unwind-prot.h" #endif OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) int
copy from liboctave/system/lo-sysdep.h copy to liboctave/system/oct-sysdep.h --- a/liboctave/system/lo-sysdep.h +++ b/liboctave/system/oct-sysdep.h @@ -23,8 +23,8 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_sysdep_h) -#define octave_lo_sysdep_h 1 +#if ! defined (octave_oct_sysdep_h) +#define octave_oct_sysdep_h 1 #include "octave-config.h" @@ -38,7 +38,6 @@ class string_vector; OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) extern OCTAVE_API int system (const std::string& cmd_str);
rename from liboctave/system/lo-sysinfo.cc rename to liboctave/system/oct-sysinfo.cc --- a/liboctave/system/lo-sysinfo.cc +++ b/liboctave/system/oct-sysinfo.cc @@ -31,15 +31,14 @@ #include <string> #include "f77-fcn.h" -#include "lo-sysinfo.h" #include "oct-shlib.h" +#include "oct-sysinfo.h" // Hack to stringize macro results. #define xSTRINGIZE(x) #x #define STRINGIZE(x) xSTRINGIZE(x) OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) std::string blas_version ()
copy from liboctave/system/lo-sysinfo.h copy to liboctave/system/oct-sysinfo.h --- a/liboctave/system/lo-sysinfo.h +++ b/liboctave/system/oct-sysinfo.h @@ -23,15 +23,14 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_sysinfo_h) -#define octave_lo_sysinfo_h 1 +#if ! defined (octave_oct_sysinfo_h) +#define octave_oct_sysinfo_h 1 #include "octave-config.h" #include <string> OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) extern OCTAVE_API std::string blas_version ();
--- a/liboctave/system/oct-time.cc +++ b/liboctave/system/oct-time.cc @@ -40,10 +40,10 @@ # include "file-stat.h" #endif -#include "lo-error.h" #include "lo-utils.h" -#include "lo-sysdep.h" +#include "oct-error.h" #include "oct-locbuf.h" +#include "oct-sysdep.h" #include "oct-time.h" #include "octave-preserve-stream-state.h" #include "strftime-wrapper.h" @@ -51,7 +51,6 @@ #include "time-wrappers.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) time::time (double d)
--- a/liboctave/system/oct-time.h +++ b/liboctave/system/oct-time.h @@ -43,7 +43,6 @@ } OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) class base_tm;
--- a/liboctave/system/oct-uname.cc +++ b/liboctave/system/oct-uname.cc @@ -34,7 +34,6 @@ #include "uname-wrapper.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) void
--- a/liboctave/system/oct-uname.h +++ b/liboctave/system/oct-uname.h @@ -31,7 +31,6 @@ #include <string> OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) class OCTAVE_API uname
--- a/liboctave/util/action-container.h +++ b/liboctave/util/action-container.h @@ -39,7 +39,6 @@ // FIXME: is there a better name for this class? OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(util) template <typename T>
--- a/liboctave/util/cmd-edit.cc +++ b/liboctave/util/cmd-edit.cc @@ -36,11 +36,11 @@ #include "cmd-hist.h" #include "file-ops.h" #include "file-stat.h" -#include "lo-error.h" -#include "lo-sysdep.h" #include "lo-utils.h" #include "oct-env.h" +#include "oct-error.h" #include "oct-mutex.h" +#include "oct-sysdep.h" #include "oct-time.h" #include "quit.h" #include "singleton-cleanup.h"
--- a/liboctave/util/cmd-hist.cc +++ b/liboctave/util/cmd-hist.cc @@ -36,8 +36,8 @@ #include "cmd-edit.h" #include "cmd-hist.h" #include "file-ops.h" -#include "lo-error.h" -#include "lo-sysdep.h" +#include "oct-error.h" +#include "oct-sysdep.h" #include "singleton-cleanup.h" #include "str-vec.h"
--- a/liboctave/util/data-conv.cc +++ b/liboctave/util/data-conv.cc @@ -37,8 +37,8 @@ #include "byte-swap.h" #include "data-conv.h" -#include "lo-error.h" #include "lo-ieee.h" +#include "oct-error.h" #include "oct-locbuf.h" // FIXME: Almost all platform-dependent sizes such as "short" are now defined
--- a/liboctave/util/f77-fcn.c +++ b/liboctave/util/f77-fcn.c @@ -31,8 +31,8 @@ #include <string.h> #include "f77-fcn.h" +#include "oct-error.h" #include "quit.h" -#include "lo-error.h" /* All the STOP statements in the Fortran routines have been replaced with a call to XSTOPX.
--- a/liboctave/util/f77-fcn.h +++ b/liboctave/util/f77-fcn.h @@ -28,7 +28,7 @@ #include "octave-config.h" -#include "lo-error.h" +#include "oct-error.h" #include "quit.h" #if defined (__cplusplus)
--- a/liboctave/util/file-info.cc +++ b/liboctave/util/file-info.cc @@ -32,8 +32,8 @@ #include "file-info.h" #include "file-stat.h" -#include "lo-error.h" -#include "lo-sysdep.h" +#include "oct-error.h" +#include "oct-sysdep.h" OCTAVE_BEGIN_NAMESPACE(octave)
--- a/liboctave/util/kpse.cc +++ b/liboctave/util/kpse.cc @@ -45,9 +45,9 @@ #include "file-ops.h" #include "file-stat.h" #include "kpse.h" -#include "lo-sysdep.h" #include "oct-env.h" #include "oct-password.h" +#include "oct-sysdep.h" #include "oct-time.h" #include "pathsearch.h" #include "unistd-wrappers.h"
--- a/liboctave/util/lo-array-errwarn.cc +++ b/liboctave/util/lo-array-errwarn.cc @@ -34,7 +34,7 @@ #include <sstream> #include "lo-array-errwarn.h" -#include "lo-error.h" +#include "oct-error.h" OCTAVE_BEGIN_NAMESPACE(octave)
--- a/liboctave/util/lo-error.c +++ b/liboctave/util/lo-error.c @@ -31,7 +31,7 @@ #include <stdio.h> #include <stdlib.h> -#include "lo-error.h" +#include "oct-error.h" /* Having this file in this directory is a kluge to avoid unresolved symbol errors when creating shared versions of liboctave. */
--- a/liboctave/util/lo-error.h +++ b/liboctave/util/lo-error.h @@ -26,85 +26,8 @@ #if ! defined (octave_lo_error_h) #define octave_lo_error_h 1 -#include "octave-config.h" +#warning 'header file "lo-error.h" is deprecated, use "oct-error.h" instead' -#if defined (__cplusplus) -extern "C" { -#endif - -OCTAVE_NORETURN extern OCTAVE_API void -liboctave_fatal (const char *fmt, ...); - -OCTAVE_NORETURN extern OCTAVE_API void -liboctave_fatal_with_id (const char *id, const char *fmt, ...); - -extern OCTAVE_API void -liboctave_warning (const char *fmt, ...); - -extern OCTAVE_API void -liboctave_warning_with_id (const char *id, const char *fmt, ...); - -typedef void (*liboctave_error_handler) (const char *, ...); - -typedef void (*liboctave_error_with_id_handler) (const char *, const char *, ...); - -typedef void (*liboctave_warning_handler) (const char *, ...); - -typedef void (*liboctave_warning_with_id_handler) (const char *, const char *, ...); - -/* Would be nice to make these pointers private, but we want to share - them among all the liboctave classes. */ -OCTAVE_FORMAT_PRINTF (1, 2) -OCTAVE_NORETURN extern OCTAVE_API liboctave_error_handler - current_liboctave_error_handler; - -OCTAVE_FORMAT_PRINTF (2, 3) -OCTAVE_NORETURN extern OCTAVE_API liboctave_error_with_id_handler - current_liboctave_error_with_id_handler; - -OCTAVE_FORMAT_PRINTF (1, 2) -extern OCTAVE_API liboctave_warning_handler current_liboctave_warning_handler; - -OCTAVE_FORMAT_PRINTF (2, 3) -extern OCTAVE_API liboctave_warning_with_id_handler - current_liboctave_warning_with_id_handler; - -extern OCTAVE_API void -set_liboctave_error_handler (OCTAVE_NORETURN liboctave_error_handler f); - -extern OCTAVE_API void -set_liboctave_error_with_id_handler (OCTAVE_NORETURN liboctave_error_with_id_handler f); - -extern OCTAVE_API void -set_liboctave_warning_handler (liboctave_warning_handler f); - -extern OCTAVE_API void -set_liboctave_warning_with_id_handler (liboctave_warning_with_id_handler f); - -// To allow the __FILE__ and __LINE__ macros to work as expected, the -// liboctave_panic_impossible, liboctave_panic_if, and -// liboctave_panic_unless symbols must be defined as macros. - -#if defined (NDEBUG) - -# define liboctave_panic_impossible() do { } while (0) - -# define liboctave_panic_if(cond) do { } while (0) - -# define liboctave_panic_unless(cond) do { } while (0) - -#else - -# define liboctave_panic_impossible() (*current_liboctave_error_handler) ("impossible state reached in file '%s' at line %d", __FILE__, __LINE__) - -# define liboctave_panic_if(cond) do { if (cond) liboctave_panic_impossible (); } while (0) - -# define liboctave_panic_unless(cond) liboctave_panic_if (! (cond)) +#include "oct-error.h" #endif - -#if defined (__cplusplus) -} -#endif - -#endif
--- a/liboctave/util/lo-hash.h +++ b/liboctave/util/lo-hash.h @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////// // -// Copyright (C) 2016-2025 The Octave Project Developers +// Copyright (C) 2025 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. @@ -26,41 +26,8 @@ #if ! defined (octave_lo_hash_h) #define octave_lo_hash_h 1 -#include "octave-config.h" +#warning 'header file "lo-hash.h" is deprecated, use "oct-hash.h" instead' -#include <string> - -OCTAVE_BEGIN_NAMESPACE(octave) - -OCTAVE_BEGIN_NAMESPACE(crypto) - -typedef void *(hash_fptr) (const char *buffer, std::size_t len, void *res); - -OCTAVE_API std::string -hash (hash_fptr hash_fcn, const std::string& str, int result_buf_len); - -OCTAVE_API int md2_digest_size (); -OCTAVE_API int md4_digest_size (); -OCTAVE_API int md5_digest_size (); -OCTAVE_API int sha1_digest_size (); -OCTAVE_API int sha224_digest_size (); -OCTAVE_API int sha256_digest_size (); -OCTAVE_API int sha384_digest_size (); -OCTAVE_API int sha512_digest_size (); - -OCTAVE_API std::string md2_hash (const std::string& str); -OCTAVE_API std::string md4_hash (const std::string& str); -OCTAVE_API std::string md5_hash (const std::string& str); -OCTAVE_API std::string sha1_hash (const std::string& str); -OCTAVE_API std::string sha224_hash (const std::string& str); -OCTAVE_API std::string sha256_hash (const std::string& str); -OCTAVE_API std::string sha384_hash (const std::string& str); -OCTAVE_API std::string sha512_hash (const std::string& str); - -OCTAVE_API std::string -hash (const std::string& hash_type, const std::string& str); - -OCTAVE_END_NAMESPACE(crypto) -OCTAVE_END_NAMESPACE(octave) +#include "oct-hash.h" #endif
--- a/liboctave/util/lo-ieee.cc +++ b/liboctave/util/lo-ieee.cc @@ -32,9 +32,9 @@ #include <limits> -#include "lo-error.h" #include "lo-ieee.h" #include "mach-info.h" +#include "oct-error.h" static double lo_inf; static double lo_nan;
--- a/liboctave/util/lo-regexp.h +++ b/liboctave/util/lo-regexp.h @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////// // -// Copyright (C) 2005-2025 The Octave Project Developers +// Copyright (C) 2025 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. @@ -26,214 +26,8 @@ #if ! defined (octave_lo_regexp_h) #define octave_lo_regexp_h 1 -#include "octave-config.h" +#warning 'header file "lo-regexp.h" is deprecated, use "oct-regexp.h" instead' -#include <list> -#include <sstream> -#include <string> - -#include "Array-oct.h" -#include "Matrix.h" -#include "str-vec.h" - -OCTAVE_BEGIN_NAMESPACE(octave) - -class OCTAVE_API regexp -{ -public: - - class opts; - class match_data; - - regexp (const std::string& pat = "", - const regexp::opts& opt = regexp::opts (), - const std::string& w = "regexp") - : m_pattern (pat), m_options (opt), m_code (nullptr), m_named_pats (), - m_names (0), m_named_idx (), m_who (w) - { - compile_internal (); - } - - regexp (const regexp&) = default; - - regexp& operator = (const regexp& rx) = default; - - ~regexp () { free (); } - - void compile (const std::string& pat, - const regexp::opts& opt = regexp::opts ()) - { - m_pattern = pat; - m_options = opt; - compile_internal (); - } - - match_data match (const std::string& buffer) const; - - bool is_match (const std::string& buffer) const; - - Array<bool> is_match (const string_vector& buffer) const; - - std::string replace (const std::string& buffer, - const std::string& replacement) const; - - static match_data - match (const std::string& pat, const std::string& buffer, - const regexp::opts& opt = regexp::opts (), - const std::string& who = "regexp") - { - regexp rx (pat, opt, who); - - return rx.match (buffer); - } - - static bool - is_match (const std::string& pat, const std::string& buffer, - const regexp::opts& opt = regexp::opts (), - const std::string& who = "regexp") - { - regexp rx (pat, opt, who); - - return rx.is_match (buffer); - } - - static Array<bool> - is_match (const std::string& pat, const string_vector& buffer, - const regexp::opts& opt = regexp::opts (), - const std::string& who = "regexp") - { - regexp rx (pat, opt, who); - - return rx.is_match (buffer); - } - - static std::string - replace (const std::string& pat, const std::string& buffer, - const std::string& replacement, - const regexp::opts& opt = regexp::opts (), - const std::string& who = "regexp") - { - regexp rx (pat, opt, who); - - return rx.replace (buffer, replacement); - } - - class opts - { - public: - - opts () - : m_case_insensitive (false), m_dotexceptnewline (false), - m_emptymatch (false), m_freespacing (false), m_lineanchors (false), - m_once (false) { } - - opts (const opts&) = default; - - opts& operator = (const opts&) = default; - - ~opts () = default; - - void case_insensitive (bool val) { m_case_insensitive = val; } - void dotexceptnewline (bool val) { m_dotexceptnewline = val; } - void emptymatch (bool val) { m_emptymatch = val; } - void freespacing (bool val) { m_freespacing = val; } - void lineanchors (bool val) { m_lineanchors = val; } - void once (bool val) { m_once = val; } - - bool case_insensitive () const { return m_case_insensitive; } - bool dotexceptnewline () const { return m_dotexceptnewline; } - bool emptymatch () const { return m_emptymatch; } - bool freespacing () const { return m_freespacing; } - bool lineanchors () const { return m_lineanchors; } - bool once () const { return m_once; } - - private: - - bool m_case_insensitive; - bool m_dotexceptnewline; - bool m_emptymatch; - bool m_freespacing; - bool m_lineanchors; - bool m_once; - }; - - class match_element - { - public: - - match_element () = delete; - - match_element (const string_vector& nt, const string_vector& t, - const std::string& ms, const Matrix& te, - double s, double e) - : m_match_string (ms), m_named_tokens (nt), m_tokens (t), - m_token_extents (te), m_start (s), m_end (e) - { } - - OCTAVE_DEFAULT_COPY_MOVE_DELETE (match_element) - - std::string match_string () const { return m_match_string; } - string_vector named_tokens () const { return m_named_tokens; } - string_vector tokens () const { return m_tokens; } - Matrix token_extents () const { return m_token_extents; } - double start () const { return m_start; } - double end () const { return m_end; } - - private: - - std::string m_match_string; - string_vector m_named_tokens; - string_vector m_tokens; - Matrix m_token_extents; - - // FIXME: Are these values declared as double because that's what - // Octave interpreter functions will store? Should they be int or - // size_t instead? - double m_start; - double m_end; - }; - - class match_data : public std::list<match_element> - { - public: - - match_data () - : std::list<match_element> (), m_named_pats () - { } - - match_data (const std::list<match_element>& l, const string_vector& np) - : std::list<match_element> (l), m_named_pats (np) - { } - - OCTAVE_DEFAULT_COPY_MOVE_DELETE (match_data) - - string_vector named_patterns () const { return m_named_pats; } - - private: - - string_vector m_named_pats; - }; - -private: - - // The pattern we've been asked to match. - std::string m_pattern; - - opts m_options; - - // Internal data describing the regular expression. - void *m_code; - - string_vector m_named_pats; - int m_names; - Array<int> m_named_idx; - std::string m_who; - - void free (); - - void compile_internal (); -}; - -OCTAVE_END_NAMESPACE(octave) +#include "oct-regexp.h" #endif
--- a/liboctave/util/lo-traits.h +++ b/liboctave/util/lo-traits.h @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////// // -// Copyright (C) 2009-2025 The Octave Project Developers +// Copyright (C) 2025 The Octave Project Developers // // See the file COPYRIGHT.md in the top-level directory of this // distribution or <https://octave.org/copyright/>. @@ -26,133 +26,8 @@ #if ! defined (octave_lo_traits_h) #define octave_lo_traits_h 1 -#include "octave-config.h" +#warning 'header file "lo-traits.h" is deprecated, use "oct-traits.h" instead' -// Ideas for these classes taken from C++ Templates, The Complete -// Guide by David Vandevoorde and Nicolai M. Josuttis, Addison-Wesley -// (2003). - -// Select a type based on the value of a constant expression. - -template <bool cond, typename T1, typename T2> -class if_then_else; - -template <typename T1, typename T2> -class if_then_else<true, T1, T2> -{ -public: - - typedef T1 result; -}; - -template <typename T1, typename T2> -class if_then_else<false, T1, T2> -{ -public: - - typedef T2 result; -}; - -// Determine whether two types are equal. -template <typename T1, typename T2> -class equal_types -{ -public: - - static const bool value = false; -}; - -template <typename T> -class equal_types <T, T> -{ -public: - - static const bool value = true; -}; - -// Determine whether a type is an instance of a template. - -template <template <typename> class Template, typename T> -class is_instance -{ -public: - - static const bool value = false; -}; - -template <template <typename> class Template, typename T> -class is_instance <Template, Template<T>> -{ -public: - - static const bool value = true; -}; - -// Determine whether a template parameter is a class type. - -template <typename T1> -class is_class_type -{ -private: - - typedef char one; - typedef struct { char c[2]; } two; - - // Classes can have pointers to members. - template <typename T2> static one is_class_type_test (int T2::*); - - // Catch everything else. - template <typename T2> static two is_class_type_test (...); - -public: - - enum { yes = sizeof (is_class_type_test<T1> (0)) == 1 }; - enum { no = ! yes }; -}; - -// Define typename ref_param<T>::type as T const& if T is a class -// type. Otherwise, define it to be T. - -template <typename T> -class ref_param -{ -public: - - typedef typename if_then_else<is_class_type<T>::no, T, T const&>::result type; -}; - -// Will turn TemplatedClass<T> to T, leave T otherwise. -// Useful for stripping wrapper classes, like octave_int. - -template <template <typename> class TemplatedClass, typename T> -class strip_template_param -{ -public: - typedef T type; -}; - -template <template <typename> class TemplatedClass, typename T> -class strip_template_param<TemplatedClass, TemplatedClass<T>> -{ -public: - typedef T type; -}; - -// Will turn TemplatedClass<T> to TemplatedClass<S>, T to S otherwise. -// Useful for generic promotions. - -template <template <typename> class TemplatedClass, typename T, typename S> -class subst_template_param -{ -public: - typedef S type; -}; - -template <template <typename> class TemplatedClass, typename T, typename S> -class subst_template_param<TemplatedClass, TemplatedClass<T>, S> -{ -public: - typedef TemplatedClass<S> type; -}; +#include "oct-traits.h" #endif
--- a/liboctave/util/lo-utils.cc +++ b/liboctave/util/lo-utils.cc @@ -39,10 +39,10 @@ #include "quit.h" #include "intprops-wrappers.h" -#include "lo-error.h" #include "lo-ieee.h" -#include "lo-mappers.h" #include "lo-utils.h" +#include "mappers.h" +#include "oct-error.h" #include "oct-inttypes.h" OCTAVE_BEGIN_NAMESPACE(octave)
--- a/liboctave/util/module.mk +++ b/liboctave/util/module.mk @@ -22,17 +22,21 @@ %reldir%/oct-base64.h \ %reldir%/oct-binmap.h \ %reldir%/oct-cmplx.h \ + %reldir%/oct-error.h \ %reldir%/oct-glob.h \ + %reldir%/oct-hash.h \ %reldir%/oct-inttypes-fwd.h \ %reldir%/oct-inttypes.h \ %reldir%/oct-locbuf.h \ %reldir%/oct-mutex.h \ + %reldir%/oct-regexp.h \ %reldir%/oct-refcount.h \ %reldir%/oct-rl-edit.h \ %reldir%/oct-rl-hist.h \ %reldir%/oct-shlib.h \ %reldir%/oct-sort.h \ %reldir%/oct-string.h \ + %reldir%/oct-traits.h \ %reldir%/pathsearch.h \ %reldir%/singleton-cleanup.h \ %reldir%/sparse-util.h \ @@ -66,17 +70,17 @@ %reldir%/glob-match.cc \ %reldir%/kpse.cc \ %reldir%/lo-array-errwarn.cc \ - %reldir%/lo-hash.cc \ %reldir%/lo-ieee.cc \ - %reldir%/lo-regexp.cc \ %reldir%/lo-utils.cc \ %reldir%/quit.cc \ %reldir%/oct-atomic.c \ %reldir%/oct-base64.cc \ %reldir%/oct-cmplx.cc \ %reldir%/oct-glob.cc \ + %reldir%/oct-hash.cc \ %reldir%/oct-inttypes.cc \ %reldir%/oct-mutex.cc \ + %reldir%/oct-regexp.cc \ %reldir%/oct-shlib.cc \ %reldir%/oct-sparse.cc \ %reldir%/oct-string.cc \
copy from liboctave/util/lo-error.h copy to liboctave/util/oct-error.h --- a/liboctave/util/lo-error.h +++ b/liboctave/util/oct-error.h @@ -23,8 +23,8 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_error_h) -#define octave_lo_error_h 1 +#if ! defined (octave_oct_error_h) +#define octave_oct_error_h 1 #include "octave-config.h"
--- a/liboctave/util/oct-glob.cc +++ b/liboctave/util/oct-glob.cc @@ -32,10 +32,10 @@ #include "glob-wrappers.h" -#include "oct-glob.h" #include "file-ops.h" #include "file-stat.h" -#include "lo-sysdep.h" +#include "oct-glob.h" +#include "oct-sysdep.h" #include "unwind-prot.h" #if defined (OCTAVE_USE_WINDOWS_API) @@ -51,7 +51,6 @@ // which is not what we want... OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) bool
--- a/liboctave/util/oct-glob.h +++ b/liboctave/util/oct-glob.h @@ -31,7 +31,6 @@ #include "str-vec.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(sys) extern OCTAVE_API bool
rename from liboctave/util/lo-hash.cc rename to liboctave/util/oct-hash.cc --- a/liboctave/util/lo-hash.cc +++ b/liboctave/util/oct-hash.cc @@ -33,12 +33,11 @@ #include <string> #include "hash-wrappers.h" -#include "lo-error.h" -#include "lo-hash.h" +#include "oct-error.h" +#include "oct-hash.h" #include "oct-locbuf.h" OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(crypto) std::string
copy from liboctave/util/lo-hash.h copy to liboctave/util/oct-hash.h --- a/liboctave/util/lo-hash.h +++ b/liboctave/util/oct-hash.h @@ -23,15 +23,14 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_hash_h) -#define octave_lo_hash_h 1 +#if ! defined (octave_oct_hash_h) +#define octave_oct_hash_h 1 #include "octave-config.h" #include <string> OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(crypto) typedef void *(hash_fptr) (const char *buffer, std::size_t len, void *res);
--- a/liboctave/util/oct-inttypes.cc +++ b/liboctave/util/oct-inttypes.cc @@ -28,7 +28,7 @@ #endif #include "fpucw-wrappers.h" -#include "lo-error.h" +#include "oct-error.h" #include "oct-inttypes.h" template <typename T>
--- a/liboctave/util/oct-inttypes.h +++ b/liboctave/util/oct-inttypes.h @@ -34,14 +34,13 @@ #include <iosfwd> #include <limits> -#include "lo-mappers.h" -#include "lo-traits.h" +#include "mappers.h" #include "oct-inttypes-fwd.h" +#include "oct-traits.h" #if defined (OCTAVE_INT_USE_LONG_DOUBLE) OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) inline long double round (long double x) @@ -927,7 +926,6 @@ // No mixed integer binary operations! OCTAVE_BEGIN_NAMESPACE(octave) - OCTAVE_BEGIN_NAMESPACE(math) template <typename T>
--- a/liboctave/util/oct-mutex.cc +++ b/liboctave/util/oct-mutex.cc @@ -27,8 +27,8 @@ # include "config.h" #endif +#include "oct-error.h" #include "oct-mutex.h" -#include "lo-error.h" #if defined (OCTAVE_USE_WINDOWS_API) # include <windows.h>
rename from liboctave/util/lo-regexp.cc rename to liboctave/util/oct-regexp.cc --- a/liboctave/util/lo-regexp.cc +++ b/liboctave/util/oct-regexp.cc @@ -48,10 +48,10 @@ #endif #include "Matrix.h" -#include "lo-error.h" +#include "oct-error.h" #include "oct-locbuf.h" +#include "oct-regexp.h" #include "quit.h" -#include "lo-regexp.h" #include "str-vec.h" #include "unistr-wrappers.h" #include "unwind-prot.h"
copy from liboctave/util/lo-regexp.h copy to liboctave/util/oct-regexp.h --- a/liboctave/util/lo-regexp.h +++ b/liboctave/util/oct-regexp.h @@ -23,8 +23,8 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_regexp_h) -#define octave_lo_regexp_h 1 +#if ! defined (octave_oct_regexp_h) +#define octave_oct_regexp_h 1 #include "octave-config.h"
--- a/liboctave/util/oct-shlib.cc +++ b/liboctave/util/oct-shlib.cc @@ -50,12 +50,12 @@ #include "file-ops.h" #include "file-stat.h" -#include "lo-error.h" +#include "oct-error.h" #include "oct-shlib.h" #include "str-vec.h" #if defined (HAVE_LOADLIBRARY_API) -# include "lo-sysdep.h" +# include "oct-sysdep.h" #endif OCTAVE_BEGIN_NAMESPACE(octave)
--- a/liboctave/util/oct-sort.cc +++ b/liboctave/util/oct-sort.cc @@ -111,11 +111,11 @@ #include <cstring> #include <stack> -#include "lo-error.h" -#include "lo-mappers.h" +#include "mappers.h" +#include "oct-error.h" +#include "oct-locbuf.h" +#include "oct-sort.h" #include "quit.h" -#include "oct-sort.h" -#include "oct-locbuf.h" template <typename T> octave_sort<T>::octave_sort () :
--- a/liboctave/util/oct-sort.h +++ b/liboctave/util/oct-sort.h @@ -91,7 +91,7 @@ #include <functional> -#include "lo-traits.h" +#include "oct-traits.h" // Enum for type of sort function enum sortmode { UNSORTED = 0, ASCENDING, DESCENDING };
--- a/liboctave/util/oct-sparse.cc +++ b/liboctave/util/oct-sparse.cc @@ -27,7 +27,7 @@ # include "config.h" #endif -#include "lo-error.h" +#include "oct-error.h" #include "oct-sparse.h" #if (defined (HAVE_AMD) || defined (HAVE_CCOLAMD) \
--- a/liboctave/util/oct-string.cc +++ b/liboctave/util/oct-string.cc @@ -39,7 +39,7 @@ #include "Array-oct.h" #include "iconv-wrappers.h" #include "lo-ieee.h" -#include "lo-mappers.h" +#include "mappers.h" #include "oct-locbuf.h" #include "uniconv-wrappers.h" #include "unistr-wrappers.h"
copy from liboctave/util/lo-traits.h copy to liboctave/util/oct-traits.h --- a/liboctave/util/lo-traits.h +++ b/liboctave/util/oct-traits.h @@ -23,8 +23,8 @@ // //////////////////////////////////////////////////////////////////////// -#if ! defined (octave_lo_traits_h) -#define octave_lo_traits_h 1 +#if ! defined (octave_oct_traits_h) +#define octave_oct_traits_h 1 #include "octave-config.h"
--- a/liboctave/util/pathsearch.cc +++ b/liboctave/util/pathsearch.cc @@ -32,9 +32,9 @@ #include <string> #include "kpse.h" -#include "lo-error.h" #include "lo-utils.h" #include "oct-env.h" +#include "oct-error.h" #include "pathsearch.h" OCTAVE_BEGIN_NAMESPACE(octave)
--- a/liboctave/util/singleton-cleanup.cc +++ b/liboctave/util/singleton-cleanup.cc @@ -27,7 +27,7 @@ # include "config.h" #endif -#include "lo-error.h" +#include "oct-error.h" #include "singleton-cleanup.h" singleton_cleanup_list *singleton_cleanup_list::s_instance = nullptr;
--- a/liboctave/util/sparse-util.cc +++ b/liboctave/util/sparse-util.cc @@ -31,7 +31,7 @@ #include <cstdarg> #include <cstdio> -#include "lo-error.h" +#include "oct-error.h" #include "oct-sparse.h" #include "sparse-util.h"
--- a/liboctave/util/unwind-prot.cc +++ b/liboctave/util/unwind-prot.cc @@ -27,7 +27,7 @@ # include "config.h" #endif -#include "lo-error.h" +#include "oct-error.h" #include "unwind-prot.h" OCTAVE_BEGIN_NAMESPACE(octave)
--- a/liboctave/util/url-transfer.cc +++ b/liboctave/util/url-transfer.cc @@ -34,8 +34,8 @@ #include "dir-ops.h" #include "file-ops.h" #include "file-stat.h" -#include "lo-sysdep.h" #include "oct-env.h" +#include "oct-sysdep.h" #include "unwind-prot.h" #include "url-transfer.h" #include "version.h"
--- a/m4/acinclude.m4 +++ b/m4/acinclude.m4 @@ -1587,8 +1587,9 @@ save_LIBS="$LIBS" LIBS="$LIBS $OPENGL_LIBS" AC_CACHE_CHECK([for glBlendFuncSeparate], - [octave_cv_func_glblendfuncseparate], - [AC_LINK_IFELSE([AC_LANG_PROGRAM([[ + [octave_cv_func_glblendfuncseparate],[ + AC_LANG_PUSH(C++) + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #if defined (HAVE_WINDOWS_H) # include <windows.h> #endif @@ -1610,7 +1611,16 @@ glBlendFuncSeparate (sfactor, dfactor, salpha, dalpha); ]])], octave_cv_func_glblendfuncseparate=yes, - [AC_LINK_IFELSE([AC_LANG_PROGRAM([[ + octave_cv_func_glblendfuncseparate=no) + AC_LANG_POP(C++) + ]) + if test $octave_cv_func_glblendfuncseparate = yes; then + AC_DEFINE(HAVE_GLBLENDFUNCSEPARATE, 1, [Define to 1 if glBlendFuncSeparate can be used directly.]) + else + AC_CACHE_CHECK([for glBlendFuncSeparate with GL_GLEXT_PROTOTYPES], + [octave_cv_func_glblendfuncseparate_as_ext],[ + AC_LANG_PUSH(C++) + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #define GL_GLEXT_PROTOTYPES 1 #if defined (HAVE_WINDOWS_H) # include <windows.h> @@ -1632,15 +1642,15 @@ GLenum dalpha=0; glBlendFuncSeparate (sfactor, dfactor, salpha, dalpha); ]])], - [AC_DEFINE(GL_GLEXT_PROTOTYPES, 1, [Define to 1 to enable OpenGL extensions in headers.]) - octave_cv_func_glblendfuncseparate=yes], - octave_cv_func_glblendfuncseparate=no) + octave_cv_func_glblendfuncseparate_as_ext=yes, + octave_cv_func_glblendfuncseparate_as_ext=no) ]) - ]) + if test $octave_cv_func_glblendfuncseparate_as_ext = yes; then + AC_DEFINE(HAVE_GLBLENDFUNCSEPARATE, 1, [Define to 1 if glBlendFuncSeparate can be used directly.]) + AC_DEFINE(GL_GLEXT_PROTOTYPES, 1, [Define to 1 to enable OpenGL extensions in headers.]) + fi + fi LIBS="$save_LIBS" - if test $octave_cv_func_glblendfuncseparate = yes; then - AC_DEFINE(HAVE_GLBLENDFUNCSEPARATE, 1, [Define to 1 if glBlendFuncSeparate can be used directly.]) - fi fi ]) dnl @@ -3238,7 +3248,7 @@ /* When cross-compiling, only test whether MIPS is the target * architecture. * FIXME: Add more conditions as needed. */ - #if defined (__mips__) + #if defined (__mips__) || defined (mips) || defined (__mips) || defined (__MIPS__) # error "quiet NaN on MIPS is not conformant to IEEE 754-2008" #endif ]])], @@ -3253,6 +3263,178 @@ fi ]) dnl +dnl Check if the payload of quiet NaN values is retained on arithmetic +dnl operations. That is needed for consistent NA handling. +dnl +AC_DEFUN([OCTAVE_QNAN_WITH_PAYLOAD], [ + AC_CACHE_CHECK([whether quiet NaN values retain payload on arithmetic operations], + [octave_cv_qnan_with_payload], + [AC_LANG_PUSH(C) + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -O0" + AC_RUN_IFELSE([AC_LANG_PROGRAM([[ + #include <math.h> + #include <stdint.h> + #include <string.h> + ]], [[ + /* Quiet NaNs retain the "payload" (i.e., the value of the mantissa) + * when performing arithmetic operations. That is not the case for + * some architectures, e.g., RISC-V. */ + + #if defined (HAVE_IEEE754_QNAN) + # define LO_IEEE_NA_HW 0x7FF840F4 + #else + # define LO_IEEE_NA_HW 0x7FF040F4 + #endif + #define LO_IEEE_NA_LW 0x40000000 + uint32_t word_NA[2]; + double oct_NA; + uint64_t bits_NA; + uint64_t bits_NA_1; + + /* Check whether platform is Big Endian */ + union + { + long l; + char c[sizeof (long)]; + } u; + u.l = 1; + + /* value used as NA in Octave */ + if (u.c[sizeof (long) - 1] == 1) + { + /* Big Endian */ + word_NA[0] = LO_IEEE_NA_HW; + word_NA[1] = LO_IEEE_NA_LW; + } + else + { + /* Little Endian */ + word_NA[1] = LO_IEEE_NA_HW; + word_NA[0] = LO_IEEE_NA_LW; + } + + memcpy (&oct_NA, &word_NA, sizeof (oct_NA)); + + memcpy (&bits_NA, &oct_NA, sizeof (oct_NA)); + oct_NA += 1.0; + memcpy (&bits_NA_1, &oct_NA, sizeof (oct_NA)); + if (bits_NA == bits_NA_1) + /* payload of quiet NaN was retained */ + return 0; + else + /* payload of quiet NaN was not retained */ + return 1; + ]])], + octave_cv_qnan_with_payload=yes, + octave_cv_qnan_with_payload=no, + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ + ]], [[ + /* When cross-compiling, only test whether the target architecture is + * RISC-V. + * FIXME: Add more conditions as needed. */ + #if defined(__riscv) + # error "quiet NaN values do not retain the payload on arithmetic operations" + #endif + ]])], + octave_cv_qnan_with_payload=yes, + octave_cv_qnan_with_payload=no) + ]) + CFLAGS="$save_CFLAGS" + AC_LANG_POP(C) + ]) + if test $octave_cv_qnan_with_payload = yes; then + AC_DEFINE(HAVE_QNAN_WITH_PAYLOAD, 1, + [Define to 1 if quiet NaN values retain their payload on arithmetic operations.]) + fi +]) +dnl +dnl Check whether casting double precision NaN values to the type "char" +dnl results in 0. +dnl +AC_DEFUN([OCTAVE_DOUBLE_QNAN_CHAR_0], [ + AC_CACHE_CHECK([whether double precision NaN values convert to char 0], + [octave_cv_double_qnan_char_0], + [AC_LANG_PUSH(C) + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -O0" + AC_RUN_IFELSE([AC_LANG_PROGRAM([[ + #include <math.h> + ]], [[ + /* Octave expects that NaN values convert to 0 when casting to char. + * That is not the case for some architectures, e.g., RISC-V. */ + double qNaN = NAN; // quiet NaN + if ((char) qNaN == 0) + return 0; + else + return 1; + ]])], + octave_cv_double_qnan_char_0=yes, + octave_cv_double_qnan_char_0=no, + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ + ]], [[ + /* When cross-compiling, only test whether target architecture is + * RISC-V. + * FIXME: Add more conditions as needed. */ + #if defined(__riscv) + # error "double NaN do not static cast to char 0" + #endif + ]])], + octave_cv_double_qnan_char_0=yes, + octave_cv_double_qnan_char_0=no) + ]) + CFLAGS="$save_CFLAGS" + AC_LANG_POP(C) + ]) + if test $octave_cv_double_qnan_char_0 = yes; then + AC_DEFINE(HAVE_DOUBLE_QNAN_CHAR_0, 1, + [Define to 1 if double precision NaN values convert to char 0.]) + fi +]) +dnl +dnl Check whether casting double precision NaN values to the type "char" +dnl results in 0. +dnl +AC_DEFUN([OCTAVE_FLOAT_QNAN_CHAR_0], [ + AC_CACHE_CHECK([whether single precision NaN values convert to char 0], + [octave_cv_float_qnan_char_0], + [AC_LANG_PUSH(C) + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -O0" + AC_RUN_IFELSE([AC_LANG_PROGRAM([[ + #include <math.h> + ]], [[ + /* Octave expects that NaN values convert to 0 when casting to char. + * That is not the case for some architectures, e.g., RISC-V. */ + float qNaN = NAN; // quiet NaN + if ((char) qNaN == 0) + return 0; + else + return 1; + ]])], + octave_cv_float_qnan_char_0=yes, + octave_cv_float_qnan_char_0=no, + [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ + ]], [[ + /* When cross-compiling, only test whether target architecture is + * RISC-V. + * FIXME: Add more conditions as needed. */ + #if defined(__riscv) + # error "float NaN do not static cast to char 0" + #endif + ]])], + octave_cv_float_qnan_char_0=yes, + octave_cv_float_qnan_char_0=no) + ]) + CFLAGS="$save_CFLAGS" + AC_LANG_POP(C) + ]) + if test $octave_cv_float_qnan_char_0 = yes; then + AC_DEFINE(HAVE_FLOAT_QNAN_CHAR_0, 1, + [Define to 1 if single precision NaN values convert to char 0.]) + fi +]) +dnl dnl Check for ar. dnl AC_DEFUN([OCTAVE_PROG_AR], [
--- a/scripts/general/interpn.m +++ b/scripts/general/interpn.m @@ -361,7 +361,22 @@ ## Test that interpolating a complex matrix is equivalent to interpolating its ## real and imaginary parts separately. -%!test <*61907> +%!testif HAVE_QNAN_WITH_PAYLOAD <*61907> +%! yi = [0.5, 1.5]'; +%! xi = [2.5, 3.5]; +%! zi = [2.25, 4.75]; +%! rand ("state", 1340640850); +%! v = rand (4, 3, 5) + 1i * rand (4, 3, 5); +%! for method = {"nearest", "linear", "spline"} +%! vi_complex = interpn (v, yi, xi, zi, method{1}); +%! vi_real = interpn (real (v), yi, xi, zi, method{1}); +%! vi_imag = interpn (imag (v), yi, xi, zi, method{1}); +%! assert (real (vi_complex), vi_real, 2*eps); +%! assert (imag (vi_complex), vi_imag, 2*eps); +%! endfor + +## Duplicate from above. Only for test statistics +%!testif ; ! __have_feature__ ("QNAN_WITH_PAYLOAD") <59830> %! yi = [0.5, 1.5]'; %! xi = [2.5, 3.5]; %! zi = [2.25, 4.75];
--- a/scripts/polynomial/roots.m +++ b/scripts/polynomial/roots.m @@ -84,10 +84,12 @@ function r = roots (c) - if (nargin < 1 || (! isvector (c) && ! isempty (c))) + if (nargin < 1) print_usage (); + elseif (! isnumeric (c) || (! isvector (c) && ! isempty (c))) + error ("roots: C must be a numeric vector"); elseif (any (! isfinite (c))) - error ("roots: inputs must not contain Inf or NaN"); + error ("roots: C must not contain Inf or NaN"); endif c = c(:); @@ -136,6 +138,7 @@ %!assert (roots ([1e-200, -1e200 * 1i, 1]), -1e-200 * 1i) %!error <Invalid call> roots () -%!error roots ([1, 2; 3, 4]) -%!error <inputs must not contain Inf or NaN> roots ([1 Inf 1]) -%!error <inputs must not contain Inf or NaN> roots ([1 NaN 1]) +%!error <C must be a numeric> roots ('ABC') +%!error <C must be a .* vector> roots ([1, 2; 3, 4]) +%!error <C must not contain Inf or NaN> roots ([1 Inf 1]) +%!error <C must not contain Inf or NaN> roots ([1 NaN 1])