LAPACK Archives

[Lapack] [Lapack SVN] r658 - in /lapack/trunk/SRC: ctgsen.f dtgsen.f stg



---------- Forwarded message ----------
Date: Sun, 10 May 2009 14:51:43 -0600
Subject: [Lapack SVN] r658 - in /lapack/trunk/SRC: ctgsen.f dtgsen.f stgsen.f
     ztgsen.f

Author: langou
Date: Sun May 10 16:51:42 2009
New Revision: 658

URL: https://icl.cs.utk.edu/trac/lapack-dev/changeset/658
Log:

Bug report sent by Alexander V. Kobotov (from Intel) on Mon, 6 Apr 2009 to 
"lapack@Domain.Removed".

"(d/s)tgsen.f: iwork(1) always referenced: line 455: iwork( 1 ) = LIWMIN,
documentation says that if IJOB=0 it shouldn't, so NULL pointer causes a
sigfault."

There is indeed the same problem for array work.

I have changed the header of the routines ctgsen.f, dtgsen.f, stgsen.f, and
ztgsen.f. No matter what an array needs to be of size at least 1. So
IWORK is of size at least 1. It was written in the header of the routine:
"IWORK   (workspace/output) INTEGER array, dimension (MAX(1,LIWORK))"
So since IWORK is of size at least 1, there is no reason not to reference it.
When there is a workspace query with IJOB.EQ.0, IWORK(1) is set to 1.


Modified:
     lapack/trunk/SRC/ctgsen.f
     lapack/trunk/SRC/dtgsen.f
     lapack/trunk/SRC/stgsen.f
     lapack/trunk/SRC/ztgsen.f

Modified: lapack/trunk/SRC/ctgsen.f
URL: 
https://icl.cs.utk.edu/trac/lapack-dev/file/lapack/trunk/SRC/ctgsen.f?rev=658
==============================================================================
--- lapack/trunk/SRC/ctgsen.f (original)
+++ lapack/trunk/SRC/ctgsen.f Sun May 10 16:51:42 2009
@@ -169,8 +169,7 @@
  *          message related to LWORK is issued by XERBLA.
  *
  *  IWORK   (workspace/output) INTEGER array, dimension (MAX(1,LIWORK))
-*          IF IJOB = 0, IWORK is not referenced.  Otherwise,
-*          on exit, if INFO = 0, IWORK(1) returns the optimal LIWORK.
+*          On exit, if INFO = 0, IWORK(1) returns the optimal LIWORK.
  *
  *  LIWORK  (input) INTEGER
  *          The dimension of the array IWORK. LIWORK >= 1.

Modified: lapack/trunk/SRC/dtgsen.f
URL: 
https://icl.cs.utk.edu/trac/lapack-dev/file/lapack/trunk/SRC/dtgsen.f?rev=658
==============================================================================
--- lapack/trunk/SRC/dtgsen.f (original)
+++ lapack/trunk/SRC/dtgsen.f Sun May 10 16:51:42 2009
@@ -179,8 +179,7 @@
  *          message related to LWORK is issued by XERBLA.
  *
  *  IWORK   (workspace/output) INTEGER array, dimension (MAX(1,LIWORK))
-*          IF IJOB = 0, IWORK is not referenced.  Otherwise,
-*          on exit, if INFO = 0, IWORK(1) returns the optimal LIWORK.
+*          On exit, if INFO = 0, IWORK(1) returns the optimal LIWORK.
  *
  *  LIWORK  (input) INTEGER
  *          The dimension of the array IWORK. LIWORK >= 1.

Modified: lapack/trunk/SRC/stgsen.f
URL: 
https://icl.cs.utk.edu/trac/lapack-dev/file/lapack/trunk/SRC/stgsen.f?rev=658
==============================================================================
--- lapack/trunk/SRC/stgsen.f (original)
+++ lapack/trunk/SRC/stgsen.f Sun May 10 16:51:42 2009
@@ -178,8 +178,7 @@
  *          message related to LWORK is issued by XERBLA.
  *
  *  IWORK   (workspace/output) INTEGER array, dimension (MAX(1,LIWORK))
-*          IF IJOB = 0, IWORK is not referenced.  Otherwise,
-*          on exit, if INFO = 0, IWORK(1) returns the optimal LIWORK.
+*          On exit, if INFO = 0, IWORK(1) returns the optimal LIWORK.
  *
  *  LIWORK  (input) INTEGER
  *          The dimension of the array IWORK. LIWORK >= 1.

Modified: lapack/trunk/SRC/ztgsen.f
URL: 
https://icl.cs.utk.edu/trac/lapack-dev/file/lapack/trunk/SRC/ztgsen.f?rev=658
==============================================================================
--- lapack/trunk/SRC/ztgsen.f (original)
+++ lapack/trunk/SRC/ztgsen.f Sun May 10 16:51:42 2009
@@ -169,8 +169,7 @@
  *          message related to LWORK is issued by XERBLA.
  *
  *  IWORK   (workspace/output) INTEGER array, dimension (MAX(1,LIWORK))
-*          IF IJOB = 0, IWORK is not referenced.  Otherwise,
-*          on exit, if INFO = 0, IWORK(1) returns the optimal LIWORK.
+*          On exit, if INFO = 0, IWORK(1) returns the optimal LIWORK.
  *
  *  LIWORK  (input) INTEGER
  *          The dimension of the array IWORK. LIWORK >= 1.


<Prev in Thread] Current Thread [Next in Thread>
  • [Lapack] [Lapack SVN] r658 - in /lapack/trunk/SRC: ctgsen.f dtgsen.f stgsen.f ztgsen.f (fwd), Julien Langou <=


For additional information you may use the LAPACK/ScaLAPACK Forum.
Or one of the mailing lists, or