<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Array bounds and errors with implied do loop. in Software Archive</title>
    <link>https://community.intel.com/t5/Software-Archive/Array-bounds-and-errors-with-implied-do-loop/m-p/956380#M20909</link>
    <description>I am modifying an old program written for a main frame in Fortran 77.  I am having trouble with this implied do loop:  &lt;BR /&gt;  &lt;BR /&gt;WRITE (6,7600) (TI(NDPLET,J),J=1,10), NAM(ISO), NDPLET, ISO,  &lt;BR /&gt;     (TABLEX(NDPLET,ISO,I),I=1,12), (TABLEY(NDPLET,ISO,I),I=1,12)  &lt;BR /&gt;	WRITE (9,7600) (TI(NDPLET,J),J=1,10), NAM(ISO),NDPLET, ISO,  &lt;BR /&gt;	(TABLEX(NDPLET,ISO,I),I=1,12), (TABLEY(NDPLET,ISO,I),I=1,12)  &lt;BR /&gt;  &lt;BR /&gt;The arrays are dimensioned as follows:  TI(20,1)  ;  NAM (20)  ;  TABLEX(30,20,12)  &lt;BR /&gt;TABLEY(30,20,12)  &lt;BR /&gt;  &lt;BR /&gt;It seems that the do loop isn't stopping.  When i used the debugger the check the values, it gave all the I values as 13, but all the J values as 1.  If I set the value of I equal to one or zero before this write statement, I still get the same error message.  &lt;BR /&gt;  &lt;BR /&gt;Suggestions?</description>
    <pubDate>Tue, 26 Jun 2001 23:55:29 GMT</pubDate>
    <dc:creator>Intel_C_Intel</dc:creator>
    <dc:date>2001-06-26T23:55:29Z</dc:date>
    <item>
      <title>Array bounds and errors with implied do loop.</title>
      <link>https://community.intel.com/t5/Software-Archive/Array-bounds-and-errors-with-implied-do-loop/m-p/956380#M20909</link>
      <description>I am modifying an old program written for a main frame in Fortran 77.  I am having trouble with this implied do loop:  &lt;BR /&gt;  &lt;BR /&gt;WRITE (6,7600) (TI(NDPLET,J),J=1,10), NAM(ISO), NDPLET, ISO,  &lt;BR /&gt;     (TABLEX(NDPLET,ISO,I),I=1,12), (TABLEY(NDPLET,ISO,I),I=1,12)  &lt;BR /&gt;	WRITE (9,7600) (TI(NDPLET,J),J=1,10), NAM(ISO),NDPLET, ISO,  &lt;BR /&gt;	(TABLEX(NDPLET,ISO,I),I=1,12), (TABLEY(NDPLET,ISO,I),I=1,12)  &lt;BR /&gt;  &lt;BR /&gt;The arrays are dimensioned as follows:  TI(20,1)  ;  NAM (20)  ;  TABLEX(30,20,12)  &lt;BR /&gt;TABLEY(30,20,12)  &lt;BR /&gt;  &lt;BR /&gt;It seems that the do loop isn't stopping.  When i used the debugger the check the values, it gave all the I values as 13, but all the J values as 1.  If I set the value of I equal to one or zero before this write statement, I still get the same error message.  &lt;BR /&gt;  &lt;BR /&gt;Suggestions?</description>
      <pubDate>Tue, 26 Jun 2001 23:55:29 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/Array-bounds-and-errors-with-implied-do-loop/m-p/956380#M20909</guid>
      <dc:creator>Intel_C_Intel</dc:creator>
      <dc:date>2001-06-26T23:55:29Z</dc:date>
    </item>
    <item>
      <title>Re: Array bounds and errors with implied do loop.</title>
      <link>https://community.intel.com/t5/Software-Archive/Array-bounds-and-errors-with-implied-do-loop/m-p/956381#M20910</link>
      <description>One problem is that you have dimensioned TI(20,1) but are then trying to write out (TI(NDPLET,J),J=1,10).  Since the second dimension is set to 1, this will cause an array bounds error since J is going from 1 to 10.  I haven't looked at the other arrays, but this is certainly one problem. &lt;BR /&gt; &lt;BR /&gt;Tom</description>
      <pubDate>Wed, 27 Jun 2001 01:22:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/Array-bounds-and-errors-with-implied-do-loop/m-p/956381#M20910</guid>
      <dc:creator>Intel_C_Intel</dc:creator>
      <dc:date>2001-06-27T01:22:00Z</dc:date>
    </item>
    <item>
      <title>Re: Array bounds and errors with implied do loop.</title>
      <link>https://community.intel.com/t5/Software-Archive/Array-bounds-and-errors-with-implied-do-loop/m-p/956382#M20911</link>
      <description>Thanks fto Tom for pointing this out.  I entered the dimensions wrong here.  These is the right one:  &lt;BR /&gt;  &lt;BR /&gt;TI(30,10)  &lt;BR /&gt;  &lt;BR /&gt;I've been trouble-shooting some more and still can't find the problem.  Andy helo would be appreciated.</description>
      <pubDate>Wed, 27 Jun 2001 02:25:25 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/Array-bounds-and-errors-with-implied-do-loop/m-p/956382#M20911</guid>
      <dc:creator>Intel_C_Intel</dc:creator>
      <dc:date>2001-06-27T02:25:25Z</dc:date>
    </item>
    <item>
      <title>Re: Array bounds and errors with implied do loop.</title>
      <link>https://community.intel.com/t5/Software-Archive/Array-bounds-and-errors-with-implied-do-loop/m-p/956383#M20912</link>
      <description>It would help to know what the error message says. &lt;BR /&gt;I wouldn't read too much into the values of I and J that you are seeing &lt;BR /&gt;in the debugger. If you are single-stepping through the program you can &lt;BR /&gt;only see the values of the variables before the implied do loop gets &lt;BR /&gt;executed or after it is done, not while it is actually looping.  &lt;BR /&gt; It is a fairly common thing to see the value of a loop counter equal to 1 more than the end value of a loop after it is done, although you should never assume that this always going to be true.  You really can't count &lt;BR /&gt;on any particular result for a loop counter outside of its scope.</description>
      <pubDate>Wed, 27 Jun 2001 05:29:01 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/Array-bounds-and-errors-with-implied-do-loop/m-p/956383#M20912</guid>
      <dc:creator>Intel_C_Intel</dc:creator>
      <dc:date>2001-06-27T05:29:01Z</dc:date>
    </item>
    <item>
      <title>Re: Array bounds and errors with implied do loop.</title>
      <link>https://community.intel.com/t5/Software-Archive/Array-bounds-and-errors-with-implied-do-loop/m-p/956384#M20913</link>
      <description>The easiest way to find out where the problem is occurring is to rewrite the code eliminating the implied DO loops - make them explicit.  Then, when debugging, the debugger will stop on the offending line and you can examine the values of the indices and the arrays that use the indices.  It shouldn't take more than a few minutes to find the problem. &lt;BR /&gt; &lt;BR /&gt;Tom</description>
      <pubDate>Wed, 27 Jun 2001 05:39:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/Array-bounds-and-errors-with-implied-do-loop/m-p/956384#M20913</guid>
      <dc:creator>Intel_C_Intel</dc:creator>
      <dc:date>2001-06-27T05:39:19Z</dc:date>
    </item>
  </channel>
</rss>

