Page 1 of 1

code folding problems in fortran

Posted: Sat Mar 04, 2006 12:41 am
by jpsam
Hi,
This is my second day of evaluating your software and I like much of it does so far but there are some issues here concerning the folding.

1) Folding fails when the read statement contains the "end=99". The folding in this case takes place at the read statement.

2) Folding fails when the end of the routine is "endsubroutine solver" intead of "end subroutine solver", both these are valid fortran.

3) Folding also fails for the case-statement when "end select" is written as "endselect"

4) the if statement does not fold well with mutiple "else if". I replaced the xfolder.dll in my version of 3.95s but the problem is still there.

Sample code:

subroutine solver()

do while( string(1:1) /= "<" )
read(funit, fmt=*, ERR =99, end=99) string, value
if( data1 ) then
a = b + a
else if( data2 ) then
c = 9
else if( data ) then
d = 10
end if
enddo
close(funit)
return
99 continue
close(funit)

select case(x)
case(1)
a = 1
case(2)
a = 2
endselect

endsubroutine solver

Posted: Sun Mar 05, 2006 4:27 am
by jussij
The Fortran code folding fixes have been made and the new xFolder.dll can be found here:

http://www.zeusedit.com/z300/xFolder.zip

To install this new dll backup the current dll and replace it with the one contained in the zip file. The else if folding issue is not fixed by this new dll :(

A fix for this bug requires a change to the zeus.exe itself and as such the fix will need to wait for the next Zeus patch. A new patch will hopefully be available in the next few weeks :)

Cheers Jussi

Post subject: code folding problems in fortran

Posted: Thu Mar 09, 2006 1:27 am
by JpSam
Ok the problem seems to be solved except for the "else if issue:

Posted: Sat Mar 11, 2006 5:58 am
by jussij
The latest Zeus patch fixes this problem: http://www.zeusedit.com/forum/viewtopic.php?t=328

Cheers Jussi