Perlbug Database - v2.36


BugIDVersionCreatedFixed In
  20010116.015   (1 msg)   5.6.0   2001-01-16    
Status:
open  
Category:
core  
Severity:
medium  
OS:
linux  
Sourceaddr: Dave  
Subject: perlcall(1) examples don't work with perl 5.6.0 with threads  
This is a bug report for perl from [email protected],
generated with the help of perlbug 1.26 running under perl 5.6.0.


-----------------------------------------------------------------
[Please enter your report here]


I tried compiling the simple example in the perlcall manpage with
a threaded perl 5.60, I've been able to use the perlcall routines
fine with my perl 5.005_03

-------------------------
  dSP;
  PUSHMARK(sp);
  perl_call_pv("some_func", G_DISCARD|G_NOARGS);
-------------------------

And I get unfortunate error:

main.cc:26: `thr' undeclared (first use this function)

Seems that the perl macros are being expanded to use some "thr" object:

-------------------------
  extern int Perl___notused  ;
  register SV **sp = (thr ->Tstack_sp)  ;
  if (++ (thr ->Tmarkstack_ptr)  == (thr ->Tmarkstack_max) )
    Perl_markstack_grow(thr ) ;
    * (thr ->Tmarkstack_ptr)  = (  sp ) - (thr ->Tstack_base)  ;
  Perl_call_pv(thr ,    "call"  ,   2 | 8   )  ;
-------------------------

What is this thr object?