Skip to content

Printing JML for quantifiers with multiple variables #119

@samysweb

Description

@samysweb

This is either a parsing bug in KeY or a printing bug in JML Parser.
Given the file

public class PolishFlagSort {
    /*@
      @ public normal_behavior
      @    ensures (\forall int I, J; 0 <= I && I < J && J < ar.length; ar[I] <= ar[J]);
      @*/
    public static void sort ( int[] ar ) {
	return;
    }
}

reprinting via JML Parser produces:

public class PolishFlagSort {
    /*@  normal_behavior
        ensures (\forall int I, int J;0 <= I && I < J && J < ar.length; ar[I] <= ar[J]);
        */
    public static void sort(int[] ar) {
        return;
    }
}

Note the , int J vs , J.

This is not blocking our project so no hurry, but I wanted to persist this observation.
From a superficial glance this does not seem to be fixable quickly.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions