[perl #36493] pmc2c.pl's shortcut to conditionally write the dump file is buggy.

0 views
Skip to first unread message

Nicholas Clark

unread,
Jul 9, 2005, 2:06:49 PM7/9/05
to bugs-bi...@rt.perl.org
# New Ticket Created by Nicholas Clark
# Please include the string: [perl #36493]
# in the subject line of all future correspondence about this issue.
# <URL: https://rt.perl.org/rt3/Ticket/Display.html?id=36493 >


osname= darwin
osvers= 7.0
arch= darwin-thread-multi-2level
cc= cc
---
Flags:
category=core
severity=high
ack=no
---
This "shortcut" in pmc2c.pl is buggy:

# XXX write default.dump only once
my $existing = find_file($include, $file);
next if $existing && -e $existing && dump_is_newer($existing);

The dump file contains contents that can change if any of the PMC's parent
classes change. Hence it's a bug to attempt to shortcut writing it based
solely on the relative timestamp of ONLY this .pmc file.

This is likely to be the cause of subtle bugs.
It should go.

Nicholas Clark
---
Summary of my parrot 0.2.1 (r0) configuration:
configdate='Fri Jul 1 16:57:59 2005'
Platform:
osname=darwin, archname=darwin-2level
jitcapable=1, jitarchname=ppc-darwin,
jitosname=DARWIN, jitcpuarch=ppc
execcapable=1
perl=perl
Compiler:
cc='ccache gcc', ccflags='-fno-common -no-cpp-precomp -DDEBUGGING -pipe -pipe -fno-common -Wno-long-double ',
Linker and Libraries:
ld='c++', ldflags=' -L/usr/local/lib -flat_namespace ',
cc_ldflags='',
libs='-lm'
Dynamic Linking:
share_ext='.dylib', ld_share_flags='-dynamiclib',
load_ext='.bundle', ld_load_flags='-bundle -undefined suppress'
Types:
iv=long, intvalsize=4, intsize=4, opcode_t=long, opcode_t_size=4,
ptrsize=4, ptr_alignment=1 byteorder=4321,
nv=double, numvalsize=8, doublesize=8

---
Environment:
DYLD_LIBRARY_PATH HOME LANG LANGUAGE LD_LIBRARY_PATH LOGDIR PATH PERL5LIB SHELL

Reply all
Reply to author
Forward
0 new messages