Bug#730466: libLLVM-3.4.so.1: crash in autocompletion with bad source files

Philipp Marek philipp.marek at linbit.com
Mon Nov 25 11:27:42 UTC 2013


> >> Could you provide a reduced test case ?
> > 
> > Well, this is only two source files, with less than 300 lines.
> 
> and ? :)
Just attach GDB an look for the cause?

> > Isn't there an LLVM tool to reduce further?
> 
> http://packages.debian.org/jessie/creduce
  $ LANG=C man creduce
  No manual entry for creduce
  See 'man 7 undocumented' for help when manual pages are not available.
  $ creduce --help
  test script '/tmp/crash/--help' not found
  usage: creduce test_script.sh file.c
  Died at /usr/bin/creduce line 347.


And it's not that trivial, the clang commandline needs the line number 
and character position - which will change when modifying the file.


I tried writing a perl script to find the line, but all I get is

  running 4 interestingness tests in parallel
  test (and sanity check) fails at /usr/bin/creduce line 133.


Ah, the return code convention is the wrong way around ... and there's a 
version in unstable that understands "--help".



Seems to hang at that point:

  $ creduce ./r.pl config.h
  ===< 11609 >===
  running 4 interestingness test(s) in parallel
  ===< pass_blank :: 0 >===
  (1.1 %, 6738 bytes)
  (12.4 %, 5964 bytes)
  ===< pass_lines :: 0 >===
  (12.5 %, 5962 bytes)
  (100.0 %, 0 bytes)
  ===< pass_lines :: 0 >===


With config.h.best equal to config.h attached (just inlined booth.h into 
that file).


A second run crashes

  $ creduce ./r.pl config.h
  ===< 11590 >===
  running 4 interestingness test(s) in parallel
  ===< pass_blank :: 0 >===
  Illegal division by zero at /usr/bin/creduce line 150.

because ^C leaves config.h with 0 bytes length ;/



Well, good luck.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: config.h.best
Type: text/x-csrc
Size: 6810 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-llvm-team/attachments/20131125/27ba85eb/attachment.c>


More information about the Pkg-llvm-team mailing list