Repeated calls to an integer function causes error 359 the function supplied as argument 2 is corrupt.
I can not find any help for this condition.
Any help would be appreciated.
Thanks peterk
Welcome to our forums
Repeated calls to an integer function causes error 359 the function supplied as argument 2 is corrupt.
I can not find any help for this condition.
Any help would be appreciated.
Thanks peterk
Can you provide a short, fully working program that illustrates the problem?
program form_test ! select form implicit none integer i, formmain external formmain i=winio@('%ca[SCREEN 1]&') i=winio@('%6nl%`^bt[SELECT FORM]',formmain end
integer function formmain()
! enter details
impliit none
integer i,formok,formend
external formok,formend
i=winio@('%ca[screen 2]&')
i=winio@('%6nl%^bt[ENTER DETAILS]&',formok) i=winio@('%2ta%^bt[ EXIT ]',formend)
formmain = 2
end function
integer function formok() formok = 2 end function
integer function formend() formend = 0 end function
press select form press enter details 3 times press exit repeat (if possible)
program form_test ! select form implicit none integer i, formmain external formmain i=winio@('%ca[SCREEN 1]&') i=winio@('%6nl%`^bt[SELECT FORM]',formmain end
integer function formmain()
! enter details
impliit none
integer i,formok,formend
external formok,formend
i=winio@('%ca[screen 2]&')
i=winio@('%6nl%^bt[ENTER DETAILS]&',formok) i=winio@('%2ta%^bt[ EXIT ]',formend)
formmain = 2
end function
integer function formok() formok = 2 end function
integer function formend() formend = 0 end function
press select form press enter details 3 times press exit repeat (if possible)
Peter, I made three changes:
i=winio@('%6nl%`^bt[SELECT FORM]',formmain) --> final bracket was missing
implicit none --> character 'c' was missing
i=winio@('%2ta%^bt[ EXIT ]',formend) --> remove ` [accent grave] / only one is allowed within a winio@ window
After that, everything runs properly.
Regards, Wilfried
Sorry about the typos. Thanks the information.
peterk
PROGRAM form_test
!
! Select Form
!
IMPLICIT NONE
INTEGER i,formmain
EXTERNAL formmain
I=WINIO@('%ca[SCREEN 1]&')
I=WINIO@('%2NL%`^BT[SELECT FORM]',formmain)
END
INTEGER FUNCTION formmain()
!
! Enter Details
!
IMPLICIT NONE
INTEGER i,formok,formend
EXTERNAL formok,formend
I=WINIO@('%ca[SCREEN 2]&')
I=WINIO@('%6NL%`^BT[ ENTER DETAILS ]&',formok)
I=WINIO@('%2TA%^BT[ EXIT ]',formend)
formmain = 2
END FUNCTION
INTEGER FUNCTION formok()
!
! Record Details
!
formok = 2
END FUNCTION
INTEGER FUNCTION formend()
formend = 0
END FUNCTION
I corrected the program as you recommended but the error still occurs.
That's funny... I compiled + linked + ran the programme with and without checkmate. No errors, no warnings, everything works as it should do. I used the latest version of FTN95 under Windows 7 / 64 bits. Then 'select form', after that 'enter details' two or three or four or ... times, 'exit', repeat it etc. No more idea, sorry...
Regards, Wilfried
I am using Silverfrost Exress version 1.0.0.0. Maybe that is causing the problem.
I have checked and the program will run OK if compiled and linked via Plato. I would appear that the problem is Silverfrost Express. Where do I get help with this type of problem?
Thanks for your help
peter