This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: ld for VMS?
On 3/05/2010 9:43 PM, Tristan Gingold wrote:
>
> On May 3, 2010, at 3:41 PM, Tim Sneddon wrote:
>
>> On 3/05/2010 8:27 PM, Tristan Gingold wrote:
>>>
>>> On May 3, 2010, at 1:16 PM, Jay K wrote:
>>>
>>>>
>>>> The memcpy problem was #define __size_t. Moving along.. :)
>>>
>>> Ok.
>>>
>>>>> decc$crtl_init
>>>>
>>>> Presumably related to decc$main? I'll check the docs.
>>>
>>> Yes, but I am not sure this is documented. Calling decc$main should make it.
>>>
>>
>> DECC$CRTL_INIT is supported and documented here:
>>
>> http://h71000.www7.hp.com/doc/83final/5763/5763pro_028.html#decc_crtl_init_routine
>>
>> The example provided shows the routine being called from Pascal.
>
> Right. But what is not documented is decc$main, which calls decc$crtl_init.
>
Good point, I misunderstood. I also cleverly sent the mail to you
only, and not the list.
The prototype for DECC$MAIN looks something like this:
void decc$main(void *arg1,
void *arg2,
void *arg3,
IFD *image_file_desc, /* Ptr to image file descriptor block */
/* returned by image activator. */
void *arg5,
void *arg6,
int *argc, /* Ptr to returned argument count */
void **argv, /* Ptr to returned argument vector */
void **envp); /* Ptr to returned environment vector */
You can see the layout for IFD in <ifddef.h>, found in the text
library, SYS$LIBRARY:SYS$LIB_C.TLB.
The image file descriptor is argument 4 of the 6 arguments passed
to the user image by the $IMGSTA service.
Tim.