--- THE-3.1/rexx.c.rexximc Thu Jul 11 11:24:27 2002 +++ THE-3.1/rexx.c Mon Sep 23 16:49:16 2002 @@ -210,10 +210,10 @@ #else rc = RexxRegisterFunctionExe( (RRFE_ARG0_TYPE)Name, (RRFE_ARG1_TYPE)THE_Function_Handler) ; /* - * If the lowercase name was registered successfully, then there is no point in + * If the lowercase name was not registered successfully, then there is no point in * trying the uppercase version, so return. */ - if ( rc == RXFUNC_OK ) + if ( rc != RXFUNC_OK ) { TRACE_RETURN(); return rc; @@ -322,7 +322,9 @@ /***********************************************************************/ { RXSIOTRC_PARM *trc_parm; +#ifdef RXFNC RXFNCCAL_PARM *fnc_parm; +#endif LONG rc=0L; short errnum=0; short macrorc; @@ -457,6 +459,7 @@ rexx_halted = TRUE; } break; +#ifdef RXFNC case RXFNC: fnc_parm = (RXFNCCAL_PARM *)ParmBlock; /* fprintf(stderr,"Got a RXFNC: %s %d\n",fnc_parm->rxfnc_name,fnc_parm->rxfnc_namel); */ @@ -532,6 +535,7 @@ } (*the_free)(macroname); break; +#endif /* RXFNC */ default: rc = RXEXIT_NOT_HANDLED; } @@ -894,8 +898,12 @@ exit_list[1].sysexit_name = "THE_EXIT"; #endif exit_list[0].sysexit_code = RXSIO; +#ifdef RXFNC exit_list[1].sysexit_code = RXFNC; exit_list[2].sysexit_code = RXENDLST; +#else + exit_list[1].sysexit_code = RXENDLST; +#endif #if (defined(WIN32) || defined(OS2)) && defined(HAVE_RESET_PROG_MODE) /* * Save the current "program" settings