Why I get stack overflow ?
How to avoid this ?
stack overflow
Re: stack overflow
A cause could be a recursive procedure (where a procedure is calling itself).
Are you using those kind of procedures ?
Are you using those kind of procedures ?
Windows (x64)
Raspberry Pi OS (Arm64)
Raspberry Pi OS (Arm64)
Re: stack overflow
I got a tricky Stack Overflow when defining a very large structure within a Procedure.
Thanks to the forum for suggesting to define it Globally.
That fixed the problem. I had reached a RAM limit for local procedure stacks.
Thanks to the forum for suggesting to define it Globally.
That fixed the problem. I had reached a RAM limit for local procedure stacks.
The nice thing about standards is there are so many to choose from. ~ Andrew Tanenbaum
Re: stack overflow
I use only global variables,but I think maybe must find the recursive procedures.
But how do I find such a recursive procedure.?
But how do I find such a recursive procedure.?
Re: stack overflow
thanks Wilbert ,it was a recursive procedure ,I find it
Procedure zend() ;zend Vg now en VA now
zend$="":DA_VA$="":DA_VG$=""
VA=Val(ar$(0)):VG=Val(ar$(2))
DA_va_now.i=(4096*VA_now)/Va: DA_VA$=Str(DA_va_now) ;zet VAnow om naar string
DA_vg_now.i=(4096*VG_now)/Vg:DA_VG$=Str(DA_vg_now)
zend$="<"+DA_vg$ +","+DA_VA$+","+relais$+">";
zend() <------------------------- here was the problem
endprocedure
Procedure zend() ;zend Vg now en VA now
zend$="":DA_VA$="":DA_VG$=""
VA=Val(ar$(0)):VG=Val(ar$(2))
DA_va_now.i=(4096*VA_now)/Va: DA_VA$=Str(DA_va_now) ;zet VAnow om naar string
DA_vg_now.i=(4096*VG_now)/Vg:DA_VG$=Str(DA_vg_now)
zend$="<"+DA_vg$ +","+DA_VA$+","+relais$+">";
zend() <------------------------- here was the problem
endprocedure
Re: stack overflow
Good to hear you were able to solve the problem
Windows (x64)
Raspberry Pi OS (Arm64)
Raspberry Pi OS (Arm64)