Trying to build [EMAIL PROTECTED] with ithreads on VMS, the build dies
due to the following:

        , Perl_regdupe
..........^
%CC-W-PTRMISMATCH, In the initializer for engines[0].regdupe, the referenced type of the pointer value "Perl_regdupe" is "function (pointer to struct interpreter, pointer to const struct regexp, pointer to struct clone_params) returning pointer to struct regexp", which is not compatible with "function (pointer to struct interpreter, pointer to struct regexp, pointer to struct clone_params) returning pointer to struct regexp".
at line number 56 in file D0:[CRAIG.perl-5_8.ext.re]re.c;1

    PL_regdupe = engines[new_state].regdupe;
....^
%CC-W-PTRMISMATCH, In this statement, the referenced type of the pointer value "engines[new_state].regdupe" is "function (pointer to struct interpreter, pointer to struct regexp, pointer to struct clone_params) returning pointer to struct regexp", which is not compatible with "function (pointer to struct interpreter, pointer to const struct regexp, pointer to struct clone_params) returning pointer to struct regexp".
at line number 98 in file D0:[CRAIG.perl-5_8.ext.re]re.c;1

Taking a quick look at smokes, for example:

http://www.nntp.perl.org/group/perl.daily-build.reports/2008/02/msg53938.html

it appears that the problem is not VMS-specific (except that on VMS
you have to work harder to ignore compiler warnings).

The local declarations in re.xs are in fact wrong compared to the
prototype, where the first argument is clearly of type C<const
regexp*>:

$ search proto.h regdupe
PERL_CALLCONV regexp*   Perl_regdupe(pTHX_ const regexp* r,
CLONE_PARAMS* param);

The attached patch gets the declarations in line with the prototype,
but surely there must be something appropriate to integrate from a
later Perl, though I have searched in vain to find it.

--
________________________________________
Craig A. Berry
mailto:[EMAIL PROTECTED]

"... getting out of a sonnet is much more
 difficult than getting in."
                 Brad Leithauser

Attachment: const_regdupe.patch
Description: Binary data

Reply via email to