Message ID | 20190918104718.3695-1-paul.durrant@citrix.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | None | expand |
Ping? I think this is the only remaining patch in this series that still needs an ack. Paul > -----Original Message----- > From: Paul Durrant <paul.durrant@citrix.com> > Sent: 18 September 2019 11:47 > To: xen-devel@lists.xenproject.org > Cc: Ian Jackson <Ian.Jackson@citrix.com>; Paul Durrant <Paul.Durrant@citrix.com>; Christian Lindig > <christian.lindig@citrix.com>; David Scott <dave@recoil.org> > Subject: [PATCH REPOST v13 3/4] tools/ocaml: abi check: Cope with consecutive relevant enums > > From: Ian Jackson <ian.jackson@eu.citrix.com> > > If the end of one enum is the `type' line for the next enum, we would > not notice it. > > Fix this by reordering the code, and getting rid of the else: now if > the "we are within an enum" branch decides that it's the end of the > enum, it unsets $ei and we then immediately process the line as a "not > within an enum" line - ie as the start of the next one. > > Reported-by: Paul Durrant <paul.durrant@citrix.com> > Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com> > Signed-off-by: Paul Durrant <paul.durrant@citrix.com> > Cc: Christian Lindig <christian.lindig@citrix.com> > Cc: David Scott <dave@recoil.org> > > v13: > - New in this version > --- > tools/ocaml/libs/xc/abi-check | 17 +++++++++-------- > 1 file changed, 9 insertions(+), 8 deletions(-) > > diff --git a/tools/ocaml/libs/xc/abi-check b/tools/ocaml/libs/xc/abi-check > index d532f37271..3cbdec582f 100755 > --- a/tools/ocaml/libs/xc/abi-check > +++ b/tools/ocaml/libs/xc/abi-check > @@ -70,14 +70,7 @@ my $cval; > $ei = undef; > my $bitnum = 0; > while (<OCAML_FILE>) { > - if (!$ei) { > - if (m{^type \s+ (\w+) \s* \= \s* $}x && $enums{$1}) { > - print "// found ocaml type $1 at $o:$.\n" or die $!; > - $ei = $enums{$1}; > - $cval = ''; > - $bitnum = 0; > - } > - } else { > + if ($ei) { > if (m{^\s+ \| \s* $ei->{OPrefix} (\w+) \s*$}x) { > $cval = $1; > if ($ei->{Mangle} eq 'lc') { > @@ -104,6 +97,14 @@ while (<OCAML_FILE>) { > die "$_ ?"; > } > } > + if (!$ei) { > + if (m{^type \s+ (\w+) \s* \= \s* $}x && $enums{$1}) { > + print "// found ocaml type $1 at $o:$.\n" or die $!; > + $ei = $enums{$1}; > + $cval = ''; > + $bitnum = 0; > + } > + } > } > > foreach $ei (values %enums) { > -- > 2.20.1.2.gb21ebb671
> On 23 Sep 2019, at 14:39, Paul Durrant <Paul.Durrant@citrix.com> wrote: > > Ping? I think this is the only remaining patch in this series that still needs an ack. Acked-by: Christian Lindig <christian.lindig@citrix.com>
diff --git a/tools/ocaml/libs/xc/abi-check b/tools/ocaml/libs/xc/abi-check index d532f37271..3cbdec582f 100755 --- a/tools/ocaml/libs/xc/abi-check +++ b/tools/ocaml/libs/xc/abi-check @@ -70,14 +70,7 @@ my $cval; $ei = undef; my $bitnum = 0; while (<OCAML_FILE>) { - if (!$ei) { - if (m{^type \s+ (\w+) \s* \= \s* $}x && $enums{$1}) { - print "// found ocaml type $1 at $o:$.\n" or die $!; - $ei = $enums{$1}; - $cval = ''; - $bitnum = 0; - } - } else { + if ($ei) { if (m{^\s+ \| \s* $ei->{OPrefix} (\w+) \s*$}x) { $cval = $1; if ($ei->{Mangle} eq 'lc') { @@ -104,6 +97,14 @@ while (<OCAML_FILE>) { die "$_ ?"; } } + if (!$ei) { + if (m{^type \s+ (\w+) \s* \= \s* $}x && $enums{$1}) { + print "// found ocaml type $1 at $o:$.\n" or die $!; + $ei = $enums{$1}; + $cval = ''; + $bitnum = 0; + } + } } foreach $ei (values %enums) {