<snip>

> the two mallocs are in different load modules.
> The SPC malloc is in the load module that we build,
> that is, the MQS exit. The SPC malloc is statically linked
> to the MQS exit. The SPC philosophy is: link everything statically
> to the requesting load module, so that there is no LE runtime environment
> needed.
>
> But the (legacy) MQS exit also contains a call to iconv, and iconv is
> not part of the SPC library. iconv is resolved by a stub (only 10 bytes),
> which calls the LE runtime DYNAMICALLY. This is another load module,
> called CEESG003, and there is the RTL malloc, which is called by iconv.
>
> The error is, in my opinion, that programs using the SPC library should
> not use other functions from the "normal" RTL library than the ANSI C
> functions
> like fputs, fgets, the string functions and so on, which are designed in
> such a
> way that they don't need other functions from the "normal" RTL which
> conflict
> with the SPC functions. But iconv uses malloc, and this conflicts with the
> SPC malloc.
>
>
<unsnip>

Have you considered wrapping the native z/OS unicode conversion service with
a thin assembler wrapper.  This could then be used by your SPC program.  You
can either mimic the RTL interface with the wrapper or expose than
functionality in a manner that best suits your needs.

Sam

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to