On 17/04/08 at 18:39 +0200, David Bremner wrote: > > I have successfully built sketch 0.2.59-3 in an amd64 sid qemubuilder with > gcc 4.2 and gcc 4.3. > > Any ideas for how to test? I guess I can install a real amd64 system > and make an i386 chroot. If the problem is with building in an i386 > chroot on amd64 is that still an RC bug?
Hi, It seems that the problem is only triggered when building with gcc-4.3 from i386, and running on an x86_64 CPU. I could reproduce the problem by building locally, and testing on pergolesi. I also tested on an Intel x86_64 CPU (Xeon), and the problem is also reproduced, so it's not specific to Opterons. I think that there's a bug in sketch, that is always there, but only triggered in that specific case (at least with those examples). A binary generated by gcc 4.2 is not affected, but that's probably because gcc 4.3 optimises something away, triggering the bug. Interesting output: Running on amd64, with a binary generated by gcc 4.3 pastel-53:/tmp/sketch-0.2.59/Doc# ../sketch -D ex070 manexamples.sk truncatedcone.sk(4) : warning, vector 'I' is never referenced truncatedcone.sk(7) : warning, vector 'K' is never referenced truncatedcone.sk(4) : warning, vector 'I' is never referenced truncatedcone.sk(7) : warning, vector 'K' is never referenced summary: 4 warning remark, node=1 probe=0.0 swap=0 split=0 (in=0 out=0) ols=0/0 remark, scene bb=(-1,0)(1,nan) remark, writing 1 objects % Sketch output, version 0.2 (build 59d, Thu Apr 17 22:45:56 2008) % Output language: PSTricks,LaTeX \psset{linewidth=.3pt} \begin{pspicture}(-1,0)(1,nan) \pstVerb{1 setlinejoin} \psline(1,0)(.924,.383)(.707,.707)(.383,.924)(0,1)(-.383,.924)(-.707,.707)(-.924,.383)(-1,0) \end{pspicture}% End sketch output => bug triggered. Now, same binary, same system, running inside valgrind: pastel-53:/tmp/sketch-0.2.59/Doc# valgrind ../sketch -D ex070 manexamples.sk ==13605== Memcheck, a memory error detector. ==13605== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al. ==13605== Using LibVEX rev 1804, a library for dynamic binary translation. ==13605== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP. ==13605== Using valgrind-3.3.0-Debian, a dynamic binary instrumentation framework. ==13605== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al. ==13605== For more details, rerun with: -v ==13605== truncatedcone.sk(4) : warning, vector 'I' is never referenced truncatedcone.sk(7) : warning, vector 'K' is never referenced truncatedcone.sk(4) : warning, vector 'I' is never referenced truncatedcone.sk(7) : warning, vector 'K' is never referenced summary: 4 warning remark, node=1 probe=0.0 swap=0 split=0 (in=0 out=0) ols=0/0 ==13605== Conditional jump or move depends on uninitialised value(s) ==13605== at 0x804F16C: fold_min_max_pt_3d (geometry.c:398) ==13605== by 0x8055061: get_extent_of_line (scene.c:1548) ==13605== by 0x80550F9: get_extent (scene.c:1618) ==13605== by 0x804BBEC: emit (emit.c:779) ==13605== by 0x8053B8D: main (main.c:99) remark, scene bb=(-1,0)(1,1) remark, writing 1 objects % Sketch output, version 0.2 (build 59d, Thu Apr 17 22:45:56 2008) % Output language: PSTricks,LaTeX \psset{linewidth=.3pt} \begin{pspicture}(-1,0)(1,1) \pstVerb{1 setlinejoin} ==13605== ==13605== Conditional jump or move depends on uninitialised value(s) ==13605== at 0x804F147: fold_min_max_pt_3d (geometry.c:378) ==13605== by 0x8055061: get_extent_of_line (scene.c:1548) ==13605== by 0x8054F30: xy_overlap_p (scene.c:1637) ==13605== by 0x804BD7E: emit (emit.c:822) ==13605== by 0x8053B8D: main (main.c:99) ==13605== ==13605== Conditional jump or move depends on uninitialised value(s) ==13605== at 0x804F16C: fold_min_max_pt_3d (geometry.c:398) ==13605== by 0x8055061: get_extent_of_line (scene.c:1548) ==13605== by 0x8054F30: xy_overlap_p (scene.c:1637) ==13605== by 0x804BD7E: emit (emit.c:822) ==13605== by 0x8053B8D: main (main.c:99) \psline(1,0)(.924,.383)(.707,.707)(.383,.924)(0,1)(-.383,.924)(-.707,.707)(-.924,.383)(-1,0) \end{pspicture}% End sketch output ==13605== ==13605== ERROR SUMMARY: 36 errors from 3 contexts (suppressed: 13 from 1) ==13605== malloc/free: in use at exit: 116,882 bytes in 2,555 blocks. ==13605== malloc/free: 3,834 allocs, 1,279 frees, 322,352 bytes allocated. ==13605== For counts of detected errors, rerun with: -v ==13605== searching for pointers to 2,555 not-freed blocks. ==13605== checked 117,132 bytes. ==13605== ==13605== LEAK SUMMARY: ==13605== definitely lost: 97,376 bytes in 2,535 blocks. ==13605== possibly lost: 79 bytes in 1 blocks. ==13605== still reachable: 19,427 bytes in 19 blocks. ==13605== suppressed: 0 bytes in 0 blocks. ==13605== Rerun with --leak-check=full to see details of leaked memory. => bug not triggered, but errors. -- | Lucas Nussbaum | [EMAIL PROTECTED] http://www.lucas-nussbaum.net/ | | jabber: [EMAIL PROTECTED] GPG: 1024D/023B3F4F | -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]