[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH REPOST v13 3/4] tools/ocaml: abi check: Cope with consecutive relevant enums



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@xxxxxxxxxx>
> Sent: 18 September 2019 11:47
> To: xen-devel@xxxxxxxxxxxxxxxxxxxx
> Cc: Ian Jackson <Ian.Jackson@xxxxxxxxxx>; Paul Durrant 
> <Paul.Durrant@xxxxxxxxxx>; Christian Lindig
> <christian.lindig@xxxxxxxxxx>; David Scott <dave@xxxxxxxxxx>
> Subject: [PATCH REPOST v13 3/4] tools/ocaml: abi check: Cope with consecutive 
> relevant enums
> 
> From: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
> 
> 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@xxxxxxxxxx>
> Signed-off-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
> Signed-off-by: Paul Durrant <paul.durrant@xxxxxxxxxx>
> Cc: Christian Lindig <christian.lindig@xxxxxxxxxx>
> Cc: David Scott <dave@xxxxxxxxxx>
> 
> 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


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.