[Search for users]
[Overall Top Noters]
[List of all Conferences]
[Download this site]
Title: | Kuck Associates Preprocessor Users |
Notice: | KAP V2.1 (f90,f77,C) SSB-kits - see note 2 |
Moderator: | HPCGRP::DEGREGORY |
|
Created: | Fri Nov 22 1991 |
Last Modified: | Fri Jun 06 1997 |
Last Successful Update: | Fri Jun 06 1997 |
Number of topics: | 390 |
Total number of notes: | 1440 |
386.0. "Kap Fortran reversing structure/record" by CSC32::J_HENSON (Don't get even, get ahead!) Tue May 27 1997 11:00
<<< TURRIS::DISK$NOTES_PACK:[NOTES$LIBRARY]FORTRAN.NOTE;1 >>>
-< Digital Fortran >-
================================================================================
Note 1312.0 Kap reversing order of structure/record 1 reply
CSC32::J_HENSON "Don't get even, get ahead!" 120 lines 22-MAY-1997 10:15
--------------------------------------------------------------------------------
Kap Fortran V2.1, Openvms ?, Dec Fortran V7.0, Alpha
A customer has reported a problem with Kap Fortran. It is revsersing
the order of his code which results in the compiler not being able
to compile the modified code. Full details are provided below.
I have NOT reproduced this at the CSC. I can't find a system with
KAP Fortran on it.
Please advise.
Thanks,
Jerry
======================================================================
Below is a stripped-down source file that KAP Fortran has problems with. The
command I am using is this:
$ kfort /kap_switches=(list,listoptions=otcklnps,scan=132,concurrent) -
/extend -
test3
The problem only occurs when /kap_switches includes the 'concurrent' option.
The KAP output file has the record and structure statements in reverse order,
which of course won't work and the Dec Fortran compiler flags fatal errors.
The errors are reported as:
-----------------------------------------------------------------------------
"KAPF /LIST/LISTOPTIONS=OTCKLNPS/SCAN=132/CONCURRENT/customer=TEST3 TEST3.FOR"
KAP/ALPHA_VMS_F 2.1 k201013 940208
KAP/ALPHA_VMS_F 2.1 k201013 940208 21-May-1997 16:09:38
test3.for:
MIRBP3A:
0 errors in file test3.for
"FORT /EXTEND TEST3.CMP"
RECORD /ORIENTATION/PRJORIENT
...............^
%FORT-F-STRNOTDEF, Structure name in RECORD statement not defined
at line number 68 in file CALVIN$USER:[CONWAY.TEST]TEST3.CMP;2
RECORD /MIBP3A_PARAMS/MPARAMS
...............^
%FORT-F-STRNOTDEF, Structure name in RECORD statement not defined
at line number 69 in file CALVIN$USER:[CONWAY.TEST]TEST3.CMP;2
etc...........
-----------------------------------------------------------------------------
I am using KAP Fortran 2.1, Fortran 7.0, on VMS 6.2-1H3. I hope to run the code
on a 4-processor Sable, hence the interest in using 'concurrent'.
Thanks for your help.
James Conway
LSBR/NIAMS/NIH
301-402-2361
c=============================================================================
SUBROUTINE MIRBP3A( A
& , Vol
& , dpx, dpy
& , drx, dry, drz
& , prjOrient
& , mParams
& )
implicit none
structure /ORIENTATION/
real*4 theta
real*4 phi
real*4 psi
real*4 x
real*4 y
end structure
structure /MIBP3A_PARAMS/
integer zStart, zEnd, zStep
real enl, rmask, rayl
end structure
c=============================================================================
C Passed in
integer drx, dry, drz, dpx, dpy
Real A(dpx,dpy), Vol(drx,dry,drz)
record /ORIENTATION/prjOrient
record /MIBP3A_PARAMS/mParams
C Local
integer irx, iry, iz, i, k, rx2, ry2
Real rad, rmask2, r1, r2, r3, r4, r12, r34, yin
rmask2 = mParams.rmask * mParams.rmask
do 3 iz=mParams.zStart, mParams.zEnd, mParams.zStep
do 2 i=1,dry
iry = i - prjOrient.y
ry2 = iry*iry
do 1 k=1, drx
irx = k - prjOrient.x
rx2 = irx*irx
rad = rx2 + ry2
if(rad.gt.rmask2) goto 1
R1 = A(irx, iry)
R2 = A(irx, iry+1)
R3 = A(irx+1, iry)
R4 = A(irx+1, iry+1)
R12 = R1 + (R2-R1)
R34 = R3 + (R4-R3)
YIN = R12 + (R34-R12)
Vol(k,i,iz) = Vol(k,i,iz) + YIN
1 CONTINUE !along X axis
2 CONTINUE !along Y axis
3 CONTINUE !along Z axis
return
end
T.R | Title | User | Personal Name | Date | Lines |
---|
386.1 | Still fails in KAP 3.1a | HERON::BLOMBERG | Trapped inside the universe | Wed May 28 1997 07:22 | 25 |
|
I tried an even simpler example on my unix station with
the latest "KAP/Digital_UA_F 3.1a k280615" and it fails
the same way: "Structure name in RECORD statement not defined".
subroutine sub1(n,arr,str)
implicit none
integer n,i,j
real arr(n,n)
structure /mystr/
real a,b
end structure
record /mystr/str
do i=1,n
do j=1,n
arr(j,i)=i*str.a + j*str.b
enddo
enddo
end
/Ake
|
386.2 | what next? | CSC32::J_HENSON | Don't get even, get ahead! | Tue Jun 03 1997 10:37 | 6 |
| Pardon my ignorance, but what do I need to do to elevate this to engineering?
I can submit an IPMT case if necessary, but will do whatever is the norm.
Thanks,
Jerry
|