Provenpackagers can help (was: Re: OCaml 4.01.0 coming to Fedora Rawhide this weekend)

Richard W.M. Jones rjones at redhat.com
Mon Sep 16 17:45:13 UTC 2013


On Mon, Sep 16, 2013 at 08:05:45AM -0600, Jerry James wrote:
> On Sun, Sep 15, 2013 at 4:28 PM, Richard W.M. Jones <rjones at redhat.com> wrote:
> > This is a compiler-internal error with using the -g option.
> >
> > It means that the (file, line) location number has line == 0 and the
> > compiler refuses to emit DWARF info with line == 0 because (according
> > to the comment in the source) clang fails to process such files.
> >
> > Because camlp5 is a preprocessor it's probably generating fake line
> > number info.
> >
> > Up to you how far you want to diagnose and/or fix this.  TBH I
> > wouldn't bother trying too hard to fix this.  Just don't use -g on the
> > affected files if possible, or turn off debuginfo on the whole
> > package.
> 
> Since the pa_lisp.ppo file handed to ocamlopt is some kind of binary
> blob, I did not make any attempt to fix this.

I guess that will be the binary form of the OCaml AST.  Something
along the lines of this may work:

  camlp5o pr_o.cmo pa_lisp.ppo

Note: you'll have to use the camlp5o from camlp5 (not camlp4o from
OCaml) since I guess the binary format will have diverged since the
Great Parting Of The Preprocessors back in '06.

> It took some gross
> Makefile hackery, but the build now works by not using -g on this and
> a couple of other affected files.

Thanks for looking at it anyhow.

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
libguestfs lets you edit virtual machines.  Supports shell scripting,
bindings from many languages.  http://libguestfs.org


More information about the devel mailing list