# HG changeset patch
# User John W. Eaton
# Date 1483394362 18000
# Mon Jan 02 16:59:22 2017 -0500
# Node ID 34895a686f07f5fa865431c8dbc2601494af5c29
# Parent b3bdfaf5b45de80cddf8fd8680e342854998fac2
F77_INT fixes for Octave 4.4.
diff --git a/src/biotsavart.cc b/src/biotsavart.cc
--- a/src/biotsavart.cc
+++ b/src/biotsavart.cc
@@ -21,37 +21,44 @@
#include
#include
+#if defined (OCTAVE_HAVE_F77_INT_TYPE)
+# define TO_F77_INT(x) octave::to_f77_int (x)
+#else
+typedef octave_idx_type F77_INT;
+# define TO_F77_INT(x) (x)
+#endif
+
extern "C"
{
F77_RET_T
- F77_FUNC (bisavf, BISAVF) (const octave_idx_type& m, const octave_idx_type& n,
+ F77_FUNC (bisavf, BISAVF) (const F77_INT& m, const F77_INT& n,
const double *CP,
const double *X, const double *dir,
double *vi);
F77_RET_T
- F77_FUNC (bisanf, BISANF) (const octave_idx_type& m, const octave_idx_type& n,
+ F77_FUNC (bisanf, BISANF) (const F77_INT& m, const F77_INT& n,
const double *CP, const double *CN,
const double *X, const double *dir,
double *vn);
F77_RET_T
- F77_FUNC (bisavb, BISAVB) (const octave_idx_type& m, const octave_idx_type& n,
+ F77_FUNC (bisavb, BISAVB) (const F77_INT& m, const F77_INT& n,
const double *CP,
const double *X, const double *Y,
double *vi);
F77_RET_T
- F77_FUNC (bisanb, BISANB) (const octave_idx_type& m, const octave_idx_type& n,
+ F77_FUNC (bisanb, BISANB) (const F77_INT& m, const F77_INT& n,
const double *CP, const double *CN,
const double *X, const double *Y,
double *vn);
F77_RET_T
- F77_FUNC (bisavc, BISAVC) (const octave_idx_type& m, const octave_idx_type& n,
+ F77_FUNC (bisavc, BISAVC) (const F77_INT& m, const F77_INT& n,
const double *CP,
const double *X,
double *vi, double *work);
F77_RET_T
- F77_FUNC (bisanc, BISANC) (const octave_idx_type& m, const octave_idx_type& n,
+ F77_FUNC (bisanc, BISANC) (const F77_INT& m, const F77_INT& n,
const double *CP, const double *CN,
const double *X,
double *vn, double *work);
@@ -130,7 +137,7 @@ by a vortex segment joining @address@hidden
if (CP.cols () == 3
&& X.cols () == 3 && dir.length () == 3)
{
- octave_idx_type m = CP.rows (), n = X.rows ();
+ F77_INT m = TO_F77_INT (CP.rows ()), n = TO_F77_INT (X.rows ());
NDArray vi (dim_vector (m, n, 3));
F77_FUNC (bisavf, BISAVF) (m, n, CP.data (),
@@ -150,7 +157,7 @@ by a vortex segment joining @address@hidden
if (CP.cols () == 3 && CN.cols () == 3 && CP.rows () == CN.rows ()
&& X.cols () == 3 && dir.length () == 3)
{
- octave_idx_type m = CP.rows (), n = X.rows ();
+ F77_INT m = TO_F77_INT (CP.rows ()), n = TO_F77_INT (X.rows ());
Matrix vn (m, n);
F77_FUNC (bisanf, BISANF) (m, n, CP.data (), CN.data (),
@@ -174,7 +181,7 @@ by a vortex segment joining @address@hidden
if (CP.cols () == 3
&& X.cols () == 3 && Y.cols () == 3 && Y.rows () == X.rows ())
{
- octave_idx_type m = CP.rows (), n = X.rows ();
+ F77_INT m = TO_F77_INT (CP.rows ()), n = TO_F77_INT (X.rows ());
NDArray vi (dim_vector (m, n, 3));
F77_FUNC (bisavb, BISAVB) (m, n, CP.data (),
@@ -193,7 +200,7 @@ by a vortex segment joining @address@hidden
if (CP.cols () == 3 && CN.cols () == 3 && CP.rows () == CN.rows ()
&& X.cols () == 3 && Y.cols () == 3 && Y.rows () == X.rows ())
{
- octave_idx_type m = CP.rows (), n = X.rows ();
+ F77_INT m = TO_F77_INT (CP.rows ()), n = TO_F77_INT (X.rows ());
Matrix vn (m, n);
F77_FUNC (bisanb, BISANV) (m, n, CP.data (), CN.data (),
@@ -217,7 +224,7 @@ by a vortex segment joining @address@hidden
if (CP.cols () == 3
&& X.cols () == 3 && X.rows () > 0)
{
- octave_idx_type m = CP.rows (), n = X.rows () - 1;
+ F77_INT m = TO_F77_INT (CP.rows ()), n = TO_F77_INT (X.rows () - 1);
NDArray vi (dim_vector (m, n, 3));
OCTAVE_LOCAL_BUFFER (double, work, 4*m);
@@ -238,7 +245,7 @@ by a vortex segment joining @address@hidden
if (CP.cols () == 3 && CN.cols () == 3 && CP.rows () == CN.rows ()
&& X.cols () == 3 && X.rows () > 0)
{
- octave_idx_type m = CP.rows (), n = X.rows () - 1;
+ F77_INT m = TO_F77_INT (CP.rows ()), n = TO_F77_INT (X.rows () - 1);
Matrix vn (m, n);
OCTAVE_LOCAL_BUFFER (double, work, 4*m);
diff --git a/src/vitensor.cc b/src/vitensor.cc
--- a/src/vitensor.cc
+++ b/src/vitensor.cc
@@ -21,12 +21,19 @@
#include
#include
+#if defined (OCTAVE_HAVE_F77_INT_TYPE)
+# define TO_F77_INT(x) octave::to_f77_int (x)
+#else
+typedef octave_idx_type F77_INT;
+# define TO_F77_INT(x) (x)
+#endif
+
extern "C"
{
F77_RET_T
- F77_FUNC(vitens, VITENS) (const octave_idx_type&, const double&,
+ F77_FUNC(vitens, VITENS) (const F77_INT&, const double&,
const double*, const double*, const double*,
- const int&, double*, double*,
+ const F77_INT&, double*, double*,
double*, double*);
}
@@ -68,9 +75,9 @@ as @address@hidden = @address@hidden
&& (nargin < 5 || args (4).is_bool_scalar ()))
{
double alfa = argalfa.scalar_value();
- octave_idx_type np = argxAC.length()-1;
+ F77_INT np = TO_F77_INT (argxAC.length()-1);
- int sym = (nargin >= 5) ? args (4).scalar_value () : 0;
+ F77_INT sym = (nargin >= 5) ? args (4).scalar_value () : 0;
if (np > 0 && argyAC.length() == np+1 && argzAC.length() == np+1)
{