On 3/23/2012 2:57 PM, Phil Smith wrote:
Thanks. The #pragma was the answer. We had tried that but thought it wasn't 
working for some reason.

Now for the next question: this allows us to implement variable parameter lists 
in C, by declaring the functions thus:
int SOMEFUNCTION(char *someparm, ...);

Is there an equivalent way to do this in PL/I?
--
...phsiii

Phil Smith III
p...@voltage.com<mailto:p...@voltage.com>
Voltage Security, Inc.
www.voltage.com<http://www.voltage.com>


Yes.

In the declare of the subroutine, specify the word LIST in the last
argument descriptor, for example:

dcl avgyx entry (fixed bin(31),
   fixed decimal(7,2) optional,
   char (8),
   list byaddr)
   options(asm);

This indicates there are zero or more arguments from the point
of the LIST


Then, in the invocation, pass at least as many arguments as
arguments before the word LIST and any others you want:

call avgyx (test_no,
            weight,
            test_name,
            rand_var,
            score_low,
            score_high);



Again, this is from our course "Cross Program Communication in z/OS"
see http://www.trainersfriend.com/Language_Environment_courses/m520descr.htm
for details of the course.



--

Kind regards,

-Steve Comstock
The Trainer's Friend, Inc.

303-355-2752
http://www.trainersfriend.com

* To get a good Return on your Investment, first make an investment!
  + Training your people is an excellent investment

* Try our tool for calculating your Return On Investment
    for training dollars at
  http://www.trainersfriend.com/ROI/roi.html

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN

Reply via email to