Re: [HACKERS] MSVC build broken with perl 5.10

From: "Zeugswetter Andreas OSB SD" <Andreas(dot)Zeugswetter(at)s-itsolutions(dot)at>
To: <pgsql-patches(at)postgresql(dot)org>
Cc: "Magnus Hagander" <magnus(at)hagander(dot)net>, <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [HACKERS] MSVC build broken with perl 5.10
Date: 2008-04-15 13:43:14
Message-ID: E1539E0ED7043848906A8FF995BDA57902F90E24@m0143.s-mxs.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches


Magnus Hagander wrote:
> I just tried the MSVC build on a system with ActiveState Perl 5.10,
and
> it doesn't work. Some quick debugging before I downgraded to 5.8
showed
> that this regexp in Project.pm line 262:
> my $replace_re = qr{^([^:\n\$]+\.c)\s*:\s*(?:%\s*:
)?\$(\([^\)]+\))\/(.*)\/[^\/]+$};
>
> matches things properly using Perl 5.8 in for example
> src/bin/initdb/Makefile (matches a total of around 10 Makefiles), but
> in 5.10 it simply does not match anything...
>
> Any perl guru out there who can comment on why? ;-)

The answer is actually simple, the \n needs the multiline modifier,
and thus the m needs to be part of the quote-like operator.

The perl doc states:
"This operator quotes (and possibly compiles) its STRING"
(it seems 5.8 did not compile, but 5.10 does)

I feel that it is rather not a perl bug, and that the modifiers need to
be put
on the qr{}. I do not quite see why this re needs to be multiline in the
first place,
but I have not touched that in the attached patch, that is ready to
apply.
(modification works in perl 5.6, 5.8, 5.10)

Andreas

Attachment Content-Type Size
Project.pm.patch application/octet-stream 721 bytes

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Ana Carolina Brito de Almeida 2008-04-15 13:48:00 stack smashing detected
Previous Message Alvaro Herrera 2008-04-15 13:36:02 Re: pulling libpqtypes from queue

Browse pgsql-patches by date

  From Date Subject
Next Message Bruce Momjian 2008-04-15 13:53:32 Re: Terminating a backend
Previous Message Greg Smith 2008-04-15 13:16:40 Re: Sorting writes during checkpoint