×

Good News Everybody!

The new search engine is LIVE!

Please report any problems to david (at) midrange.com.




local variables are created for each invocation, static variables only once per activation.

Dieter

--------------------------------------------------
From: "David FOXWELL" <David.FOXWELL@xxxxxxxxx>
Sent: Monday, January 31, 2011 3:55 PM
To: "RPG programming on the IBM i / System i" <rpg400-l@xxxxxxxxxxxx>
Subject: recursive calls

Hi all

Today, by accident I set up a job where program tried to call itself. We have one program that is duplicated in several libraries and LIBA/PGM should have called LIBB/PGM. This was the first time I'd actually seen the error produce in this way. A coworker informed me that recursive calls were possible with subprocedures thanks to the fact that at each call, a separate storage area is allocated for each subprocedure. This is not the case for program calls. That means that if mySP calls mySP and there is a local variable V1, there will be two adresses for V1, each containing a different value.
I don't doubt my coworker, it's just that my reference is midrange.com.

Is my information accurate? What happens to static variables in such subprocedure calls?
--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2026 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.