Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[photran] Issues with Photran 4.0 beta 3 parsing.

Hi

I've found a couple of issues with this release and some code from the ADCIRC model (adcirc.org). I should mention that I'm fairly new at fortran, but a friend here at RENCI who is well versed thought these might be issues worth mentioning.

1) Like Jure Ravnik, I'd like to know how to handle code that is in fixed 132 format.

2) There seems to be some confusion in the parsing concerning the keyword "type". For example the following is flagged as a syntax error, even though the type is defined in the same source file.

type (OutputDataDescript_t) :: descript

interestingly the following is also flagged as a syntax error:

type1     = type2

here is the declaration of these variables:

CHARACTER(LEN=4) :: type1 CHARACTER(LEN=4) :: type2

It also flags this as an error

type = 2

after the following declaration

integer :: ns,type

but I'm not sure if this is something the compiler lets me do that it shouldn't or if this a photran issue.

3) There seems to be some confusion about the use of semi-colons to separate statements, which I thought was allowed under the Fortran 90 definition. The following generates a syntax error, but I don't think it should.

USE SIZES; USE GLOBAL, ONLY: C3D, COMM; USE GLOBAL_IO

The exact message is

Syntax error: Unexpected extraneous character (line 6, column 16)

It doesn't like any of these either...

     READ(IHOT,REC=IHOTSTP) IMHS         ; IHOTSTP = IHOTSTP + 1
     READ(IHOT,REC=IHOTSTP) TIME         ; IHOTSTP = IHOTSTP + 1
     READ(IHOT,REC=IHOTSTP) ITHS         ; IHOTSTP = IHOTSTP + 1
     READ(IHOT,REC=IHOTSTP) NP_G_IN      ; IHOTSTP = IHOTSTP + 1
     READ(IHOT,REC=IHOTSTP) NE_G_IN      ; IHOTSTP = IHOTSTP + 1
     READ(IHOT,REC=IHOTSTP) NP_A_IN      ; IHOTSTP = IHOTSTP + 1
     READ(IHOT,REC=IHOTSTP) NE_A_IN      ; IHOTSTP = IHOTSTP + 1

4) I'm also getting an "Unexpected end of input" error after an END statement that terminates a subroutine. I'd post the whole sub, but it's about 460 lines!

5) One other thing seems odd: In the outline view, when I click on the error it doesn't zoom the editor to the offending line. I'm running this on a Mac running Leopard, maybe this is a Leopard thing?

Those are the issues I've seen so far. Any comments, suggestions or ideas how to proceed are most welcome.

Thanks
Howard

--
Howard Lander <mailto:howard@xxxxxxxxx>
Senior Research Software Developer
Renaissance Computing Institute <http://www.renci.org>
The University of North Carolina at Chapel Hill
Duke University
North Carolina State University
100 Europa Drive
Suite 540
Chapel Hill, NC 27517
919-445-9651


Back to the top