From: Jugoslav Dujic on
Dr Ivan D. Reid wrote:
> On Wed, 01 Oct 2008 23:31:17 -0500, Steven G. Kargl
> <kargl(a)REMOVE.apl.washington.edu>
> wrote in <RPednVKmv_wI03nVnZ2dnUVZ_r3inZ2d(a)comcast.com>:
>
>> REMOVE:kargl[413] diff -u deriv.F90.orig deriv.F90
>> --- deriv.F90.orig 2008-10-01 21:27:45.000000000 -0700
>> +++ deriv.F90 2008-10-01 21:27:43.000000000 -0700
>> @@ -69,6 +69,9 @@
>> !***********************************************************************
>> data icalcn/ 0/
>> if (icalcn /= numcal) then
>> + if (.not. allocated(aidref)) then
>> + allocate(aidref(nvar))
>> + end if
>> aidref = 0.d0
>> aifrst = index(keywrd,' RESTART') == 0
>> saddle = index(keywrd, " SADDLE") /= 0
>
>> you hit
>> REMOVE:kargl[412] ./mopac sgk.dat
>> At line 109 of file cartab.F90
>> Fortran runtime error: Array reference out of bounds for array 'nallop',
>> lower bound of dimension 1 exceeded (-1077948016 < 1)
>
> There was a problem with bounds checking with MOPAC 6, since it
> used the old "convention" of specifying argument arrays of unknown length in
> subroutines with size 1 -- this has probably carried over into the
> later version. (Looking through my source, I see that I must have replaced
> all of these declarations with a * at some point; I definitely remember
> being bitten by it.)

Yeah, but...

>>Fortran runtime error: Array reference out of bounds for array
>>'nallop',
>>lower bound of dimension 1 exceeded (-1077948016 < 1)

....-1077948016 certainly does not look like a desired array index to
me -- much rather an uninitialized memory location, or an artefact
of an earlier type mismatch.

--
Jugoslav
www.xeffort.com
Please reply to the newsgroup.
You can find my real e-mail on my home page above.
From: user1 on
Steven G. Kargl wrote:

[snip]

>>
>
> Yeah, it's a monologue! This is definitely poorly written software.
> You need to add the -fno-automatic command line option to get something
> that will run. You're also going to need to investigate other assumptions
> in the software. With your input, the last few lines of the output
> file are
>


Earlier versions mopac6 and mopac7 were sloppy F77 that would compile
(fortuitously ?) with f2c+gcc, but not easily with g77. It appears that one of
those older versions has now been run through an automated F77 to F90 translator.






From: Jinsong.Zhao on
On Oct 2, 7:55 pm, user1 <u...(a)example.net> wrote:
>
> Earlier versions mopac6 and mopac7 were sloppy F77 that would compile
> (fortuitously ?) with f2c+gcc, but not easily with g77. It appears that one of
> those older versions has now been run through an automated F77 to F90 translator.

It could be compiled with g77. I have refered to the following link,
and get Mopac6 and Mopac7 in F77 to work.

http://www.ccl.net/chemistry/resources/messages/2006/09/15.017-dir/index.html

However, I don't remember whether I modified the source code according
warning message.

Regards,
Jinsong
From: glen herrmannsfeldt on
user1 wrote:
(snip)

> Earlier versions mopac6 and mopac7 were sloppy F77 that would compile
> (fortuitously ?) with f2c+gcc, but not easily with g77. It appears that
> one of those older versions has now been run through an automated F77 to
> F90 translator.

In C, static variables are always initialized to zero.
That would also seem true of f2c+gcc for any variables in COMMON,
and I believe for most other variables.

If using a different compiler, one should check carefully
that all variables are initialized before they are used.

-- glen

From: Richard Maine on
Jugoslav Dujic <jdujic(a)yahoo.com> wrote:

> Dr Ivan D. Reid wrote:
> > On Wed, 01 Oct 2008 23:31:17 -0500, Steven G. Kargl
> > <kargl(a)REMOVE.apl.washington.edu>
> > wrote in <RPednVKmv_wI03nVnZ2dnUVZ_r3inZ2d(a)comcast.com>:
> >
> >> Fortran runtime error: Array reference out of bounds for array 'nallop',
> >> lower bound of dimension 1 exceeded (-1077948016 < 1)
> >
> > There was a problem with bounds checking with MOPAC 6, since it
> > used the old "convention" of specifying argument arrays of unknown length in
> > subroutines with size 1 -- this has probably carried over into the
> > later version. (Looking through my source, I see that I must have replaced
> > all of these declarations with a * at some point; I definitely remember
> > being bitten by it.)
>
> Yeah, but...

> ...-1077948016 certainly does not look like a desired array index to
> me -- much rather an uninitialized memory location, or an artefact
> of an earlier type mismatch.

Also note that the message says it is the lower bound that is exceeded.
That's consistent with the index value being negative. It isn't what
you'd expect from the old f66 convention of using 1 for the upper bound
instead of the * that f66 didn't have.

--
Richard Maine | Good judgement comes from experience;
email: last name at domain . net | experience comes from bad judgement.
domain: summertriangle | -- Mark Twain
First  |  Prev  |  Next  |  Last
Pages: 1 2 3 4 5 6 7 8 9 10
Prev: Segmentation Fault using cron
Next: fortran 90/95 BNF grammar