Perl / perl5

🐪 The Perl programming language
https://dev.perl.org/perl5/
Other
1.96k stars 555 forks source link

Re: Bleadperl d343c3ef breaks MLEHMANN/Guard-1.021.tar.gz #10070

Closed p5pRT closed 14 years ago

p5pRT commented 14 years ago

Migrated from rt.perl.org#71994 (status was 'resolved')

Searchable as RT71994$

p5pRT commented 14 years ago

From schmorp@schmorp.de

On Sun\, Jan 10\, 2010 at 03​:07​:09PM +0100\, "Andreas J. Koenig" \andreas\.koenig\.7os6VVqR@​franz\.ak\.mind\.de wrote​:

commit d343c3ef4538135207ab69cd65d1bb1ef5403ccc Author​: Gerard Goossen \gerard@​ggoossen\.net Date​: Thu Nov 12 14​:31​:43 2009 +0100

Add ENTER_with_name and LEAVE_with_name to automaticly check for matching ENTER/LEAVE when debugging is enabled

I'd say the real problem is the undocumented enter/leave pair around xsub calls.

In fact\, the xsubpp documentation hints that there is no such enter/leave pair (as the typemap has special cases that are documented to add enter/leave\, which would be pointless if it's done automatically).

The leave/enter trick is pretty common among cpan modules\, btw. If that gets broken by perl it should offer some defined way around it.

--   The choice of a Deliantra\, the free code+content MORPG   -----==- _GNU_ http​://www.deliantra.net   ----==-- _ generation   ---==---(_)__ __ ____ __ Marc Lehmann   --==---/ / _ \/ // /\ \/ / pcg@​goof.com   -=====/_/_//_/\_\,_/ /_/\_\

p5pRT commented 14 years ago

From @rgarcia

2010/1/10 schmorp@​schmorp.de (via RT) \perlbug\-followup@​perl\.org​:

# New Ticket Created by  schmorp@​schmorp.de # Please include the string​:  [perl #71994] # in the subject line of all future correspondence about this issue. # \<URL​: http​://rt.perl.org/rt3/Ticket/Display.html?id=71994 >

On Sun\, Jan 10\, 2010 at 03​:07​:09PM +0100\, "Andreas J. Koenig" \andreas\.koenig\.7os6VVqR@&#8203;franz\.ak\.mind\.de wrote​:

commit d343c3ef4538135207ab69cd65d1bb1ef5403ccc Author​: Gerard Goossen \gerard@&#8203;ggoossen\.net Date​:   Thu Nov 12 14​:31​:43 2009 +0100

  Add ENTER_with_name and LEAVE_with_name to automaticly check for matching ENTER/LEAVE when debugging is enabled

I'd say the real problem is the undocumented enter/leave pair around xsub calls.

In fact\, the xsubpp documentation hints that there is no such enter/leave pair (as the typemap has special cases that are documented to add enter/leave\, which would be pointless if it's done automatically).

That's right. I would tend to think it's more a doc bug\, though.

The leave/enter trick is pretty common among cpan modules\, btw. If that gets broken by perl it should offer some defined way around it.

This is broken only with DEBUGGING perls currently. The ENTER_with_name / LEAVE_with_name macros are only different under DEBUGGING\, and for sub calls are always called with "sub" as an argument. So in theory changing the XS code to perform ENTER_with_name ("sub") instead of ENTER (etc.) should fix this... for 5.11.X and superior only. Another way to fix it is to remove the ENTER_with_name macros from core where the XSubs are called.

p5pRT commented 14 years ago

The RT System itself - Status changed from 'new' to 'open'

p5pRT commented 14 years ago

From @cpansprout

$ perl5.13.4 -S cpan ... cpan[1]> test MLEHMANN/Guard-1.021.tar.gz ... All tests successful. ...

This is a duplicate of 71992\, fixed by a57c668520b9767f7a6c93e0a396cee792a98be5.

p5pRT commented 14 years ago

@cpansprout - Status changed from 'open' to 'resolved'