Please do not reply directly to this email. All additional comments should be made in the comments box of this bug report. Summary: perl C compiler Can't locate object method "IVX" via package "B::NV" https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=199736 jvdias@xxxxxxxxxx changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |MODIFIED ------- Additional Comments From jvdias@xxxxxxxxxx 2006-07-21 20:35 EST ------- Yes, looking at /usr/lib/perl5/5.8.8/i386-linux-thread-multi/B/C.pm, B::NV::save appears to be mostly copied from B::IV::save, and on line 650, the $sv->IVX should be a $sv->NVX - with that change, your examples compile correctly. Indeed, without that change, perlcc doesn't seem to be able to handle floating point values at all. You can fix this locally by applying this patch: --- --- ./lib/B/C.pm 2006-01-13 09:47:39.000000000 -0500 +++ /usr/lib/perl5/5.8.8/i386-linux-thread-multi/B/C.pm 2006-07-21 20:25:39.000000000 -0400 @@ -650 +650 @@ - $xpvnvsect->add(sprintf("0, 0, 0, %d, %s", $sv->IVX, $val)); + $xpvnvsect->add(sprintf("0, 0, 0, %d, %s", $sv->NVX, $val)); --- or by changing byte 18708 of C.pm from 'I' to 'N'. That said, as stated in todays perl5-porters mail on this subject: > Re: [perl #39903] perl C compiler Can't locate object method "IVX" via package "B::NV" > From: "Joshua ben Jore" <twists@xxxxxxxxx> > To: perl5-porters@xxxxxxxx > CC: bugs-bitbucket@xxxxxxxxxxxxxxxxxxxxxx > Date: 2006-07-21 17:53 > > B::C, B::CC, and perlcc are not being maintained. I can only > guess as to why you tried to use this. Perhaps to get a single binary, > perhaps to get faster execution or startup, perhaps to hide your source > code. The first two goals can be achieved through tools like PAR and pperl. > > Josh Yes, nothing in perlcc / B::C seems to have been maintained since 1998, so it is unlikely the above will be the only issue you encounter when trying to use perlcc for any real app. I suggest you seriously examine why you need to use these tools; but I'll apply the above patch on the next release. -- Configure bugmail: https://bugzilla.redhat.com/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.