I'd rather not just make the errors go away... Sorry to be so thick but I'd really like to understand what's wrong.

First: Where is REXXPFN coming from?  That string appears nowhere in the .c or .h files of the mod_rexx package.  It appears in several .h files in oorexx .h files, but nowhere (that I can find) is it actually defined only as references.

Second: I've replaced all the instances of ulong APIENTRY function with RexxReturnCode REXXENTRY function :

/* taf
ULONG APIENTRY WWWLogError(PSZ Name, LONG Argc, RXSTRING Argv[],
                           PSZ Queuename, PRXSTRING Retstr)
 */
RexxReturnCode REXXENTRY WWWLogError(
     const char* Name,
     size_t Argc,
     CONSTRXSTRING Argv[],
     const char* queuename,
     PRXSTRING Retstr)

which I thought was what you recommended earlier but am still getting the C4133 warnings.

Maybe I'm not including the correct header files?  or not in the correct sequence? Here's what /showIncludes reports:

Note: including file:  D:\ooRexx\ooRexx5.0.0\api\rexx.h
Note: including file:   d:\oorexx\oorexx5.0.0\api\rexxapitypes.h
Note: including file:   d:\oorexx\oorexx5.0.0\api\rexxapidefs.h
Note: including file:   d:\oorexx\oorexx5.0.0\api\rexxplatformdefs.h
Note: including file:   d:\oorexx\oorexx5.0.0\api\rexxplatformapis.h


On 2020-06-13 02:42, Rick McGuire wrote:
To make the errors go away at the point where they occur, just add an explicit cast for the argument to (REXXPFN). However you should also go back to where the function named as an argument is defined and make sure it is updated to the current calling conventions.

On Fri, Jun 12, 2020 at 8:05 PM taf <t...@pgmguild.com <mailto:t...@pgmguild.com>> wrote:

    I'd like to go back to the beginning, because I'm completely at
    sea here...

    I'm getting many warning messages from the compiler, all of which
    seem (to me anyway) to be griping about the incompatibility of
    something (?) with REXXPFN.  But REXXPFN does not appear in any of
    the mod_rexx code.  It does appear in oorexxapi.h and rexx.h in
    the oorexx/api directory... However none of the cases of REXXPFN
    seem (to my admittedly untutored eye) to be definitions, just
    references.   So... where does REXXPFN come from?  How should I
    change my code to be compatible with the REXXPFN?

    mod_rexx.c(410): warning C4133: 'function': incompatible types -
    from 'int (__cdecl *)(int,int,PEXIT)' to 'REXXPFN'

    rxfuncs.c(2695): warning C4133: 'function': incompatible types -
    from 'ULONG (__cdecl *)(PSZ,LONG,RXSTRING *,PSZ,PRXSTRING)' to
    'REXXPFN'


    On 2020-06-11 16:30, Rick McGuire wrote:
    Rexx_INI_Exit is a routine inside of the code you're working on.

    Rick

    On Thu, Jun 11, 2020 at 7:21 PM taf <t...@pgmguild.com
    <mailto:t...@pgmguild.com>> wrote:

        I cannot find any references to Rexx_INI_Exit inApplication
        Programming Interfaces 5.0.0.12003.  Am I looking in the
        wrong book?

        On 2020-06-11 12:32, Rick McGuire wrote:


        On Thu, Jun 11, 2020 at 3:13 PM taf <t...@pgmguild.com
        <mailto:t...@pgmguild.com>> wrote:

            Hi, thanks.  But... I don't understand how to use your
            answer...

            I have many statements that incur the warning, they are
            all like:

            rc = RexxRegisterExitExe(WWW_INI_EXIT, Rexx_INI_Exit, NULL);

        Your declaration is using the old 3.2.0 style of declaration
        for Rexx_INI_Exit. See the most recent API documentation for
        details.

        Rick

            or like this

            ap_log_error(APLOG_MARK, APLOG_NOERRNO | APLOG_ERR, 0,
            r->server, "Error %d registering Rexx WWW_INI_EXIT",
                                     (int)rc);

            the ap_log_xxx are macros defined like this:

            #define modrexx_debug(srvr, msg) ap_log_error(APLOG_MARK, \
                APLOG_NOERRNO | APLOG_DEBUG, 0, srvr, msg)
            #define modrexx_error(srvr, msg) ap_log_error(APLOG_MARK, \
                APLOG_NOERRNO | APLOG_ERR, 0, srvr, msg)

            I'm not sure how to get from these to your statement.

            More help please?

            On 2020-06-10 16:16, Rick McGuire wrote:
            Use this for your function declarations:

            RexxReturnCode REXXENTRY MySimpleFunction(
                 const char* name,                    //  Function name         
     //
                 size_t numargs,                      //  Number of arguments   
     //
                 CONSTRXSTRING args[],                //  Argument array        
     //
                 const char*  queuename,              //  Current queue         
     //
                 PRXSTRING retstr )                   //  Return RESULTS string 
     //

            On Tue, Jun 9, 2020 at 11:21 PM taf <t...@pgmguild.com
            <mailto:t...@pgmguild.com>> wrote:

                I'm trying to upgrade David Ashley's mod_rexx
                package for Apache httpd.
                The last version was for httpd 2.2 and ooRexx 3.1.2
                I've successfully
                compiled for httpd 2.4 and ooRexx 5.0.0 but...

                I'm getting many warnings:

                mod_rexx.c(410): warning C4133: 'function':
                incompatible types - from
                'int (__cdecl *)(int,int,PEXIT)' to 'REXXPFN'

                rxfuncs.c(2695): warning C4133: 'function':
                incompatible types - from
                'ULONG (__cdecl *)(PSZ,LONG,RXSTRING
                *,PSZ,PRXSTRING)' to 'REXXPFN'

                can anyone point out what I've done wrong? These
                'warnings' seem pretty
                dire to me...

                Thanks in advance.




                _______________________________________________
                Oorexx-devel mailing list
                Oorexx-devel@lists.sourceforge.net
                <mailto:Oorexx-devel@lists.sourceforge.net>
                https://lists.sourceforge.net/lists/listinfo/oorexx-devel



            _______________________________________________
            Oorexx-devel mailing list
            Oorexx-devel@lists.sourceforge.net  
<mailto:Oorexx-devel@lists.sourceforge.net>
            https://lists.sourceforge.net/lists/listinfo/oorexx-devel

    _______________________________________________
    Oorexx-devel mailing list
    Oorexx-devel@lists.sourceforge.net
    <mailto:Oorexx-devel@lists.sourceforge.net>
    https://lists.sourceforge.net/lists/listinfo/oorexx-devel



_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel
_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to