Not sure I understand your question.  My example is merely to show the
danger of using *prv.  In this example, I just try to demonstrate that
if developer forgot to recompile an existing program that was compiled
before the *current was added, this program will not get signature
violation.  At run time it will actually execute IFS_Proc3 even though
the statement is coded to execute IFS_Proc2.  This is where I don't
think *prv should be used (Again personal preference only).  It does not
give you any protection and actually given developer some false sense of
security.
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Murphy, Mark
Sent: Thursday, February 14, 2008 1:13 PM
To: RPG programming on the AS400 / iSeries
Subject: RE: Processes after CRTSRVPGM
Explain to me why I would expect any program to be able to call a
procedure that I have removed from the service program.  If you use a
tool incorrectly you are bound to have trouble.
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Lim Hock-Chai
Sent: Thursday, February 14, 2008 10:51 AM
To: RPG programming on the AS400 / iSeries
Subject: RE: Processes after CRTSRVPGM
If you binding language looks like below, guess what will happen if you
forgot/miss recompile an existing program that is still using one of the
*prv signature?  This existing program will not get signature violation.
It just going to execute the wrong procedure when executing IFS_Proc2.
STRPGMEXP  PGMLVL(*CURRENT)
EXPORT SYMBOL(IFS_Proc1)
EXPORT SYMBOL(IFS_Proc3)
ENDPGMEXP                   
STRPGMEXP  PGMLVL(*PRV)
EXPORT SYMBOL(IFS_Proc1)
EXPORT SYMBOL(IFS_Proc2)
EXPORT SYMBOL(IFS_Proc3)
ENDPGMEXP                   
                       
STRPGMEXP  PGMLVL(*PRV)
EXPORT SYMBOL(IFS_Proc1)
EXPORT SYMBOL(IFS_Proc2)
ENDPGMEXP                   
                       
                       
STRPGMEXP  PGMLVL(*PRV)
EXPORT SYMBOL(IFS_Proc1)
ENDPGMEXP             
      
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Buck
Sent: Thursday, February 14, 2008 9:43 AM
To: rpg400-l@xxxxxxxxxxxx
Subject: Re: Processes after CRTSRVPGM
Lim Hock-Chai wrote:
My personal preference is never use *prv.  IMHO, it is quite
dangerous.
Can you write a little more on why you feel *PRV is dangerous?  I've
used this exclusively since V3 and haven't encountered any problems... 
I'm hoping I haven't missed something!
   --buck
--
This is the RPG programming on the AS400 / iSeries (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.