On Tue, Jul 01, 2014 at 05:27:42PM +0200, Pino Toscano wrote: > On Tuesday 01 July 2014 16:16:18 Richard W.M. Jones wrote: > > Sort the structs when generating code. Since the structs are > > logically indepedent of each other, this should have no effect except > > to make generated files list the structs in a different order. > > > > However this also fixes the following build problem: > > > > File "convert_linux.ml", line 322, characters 43-50: > > Error: This expression has type G.stat = Guestfs.stat > > but an expression was expected of type G.dirent = Guestfs.dirent > > > > It turns out the OCaml bindings don't like the fact that we have > > two structs with a common field name (dirent.ino and stat.ino). > > > > In OCaml < 4.01, this means that any attempt to reference stat.ino > > would fail because dirent.ino appears second in the file, overriding > > stat.ino. > > So that means that with such OCaml versions both the .ino members cannot > be used at the same time?
Yup. Luckily we don't use `dirent.ino'. > > In OCaml >= 4.01 the compiler now uses some disambiguation rules based > > on the known types to resolve this problem. > > Patch seems good to me. Thanks - I will push it in a moment. Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com libguestfs lets you edit virtual machines. Supports shell scripting, bindings from many languages. http://libguestfs.org _______________________________________________ Libguestfs mailing list [email protected] https://www.redhat.com/mailman/listinfo/libguestfs
