diff liboctave/dMatrix.cc @ 1950:ab6abe89aaa1

[project @ 1996-02-14 04:36:21 by jwe]
author jwe
date Wed, 14 Feb 1996 04:38:44 +0000
parents d7dec93d4b87
children 9fae6fc592f2
line wrap: on
line diff
--- a/liboctave/dMatrix.cc	Wed Feb 14 04:28:46 1996 +0000
+++ b/liboctave/dMatrix.cc	Wed Feb 14 04:38:44 1996 +0000
@@ -2664,16 +2664,22 @@
   double scale;
   int info;
 
-  F77_FCN (dtrsyl, DTRSYL) ("N", "N", 1, a_nr, b_nr,
-			    sch_a.fortran_vec (), a_nr, 
-			    sch_b.fortran_vec (), b_nr,
-			    cx.fortran_vec (), a_nr, scale,
-			    info, 1L, 1L);
-
-
-  // XXX FIXME XXX -- check info?
+  double *pa = sch_a.fortran_vec ();
+  double *pb = sch_b.fortran_vec ();
+  double *px = cx.fortran_vec ();
+
+  F77_XFCN (dtrsyl, DTRSYL, ("N", "N", 1, a_nr, b_nr, pa, a_nr, pb,
+			     b_nr, px, a_nr, scale, info, 1L, 1L));
+
+
+  if (f77_exception_encountered)
+    (*current_liboctave_error_handler) ("unrecoverable error in dtrsyl");
+  else
+    {
+      // XXX FIXME XXX -- check info?
   
-  retval = -ua*cx*ub.transpose ();
+      retval = -ua*cx*ub.transpose ();
+    }
 
   return retval;
 }