A CONTINUE statement in a DO UNTIL loop within PROC DS2 causes an infinite loop


Using a CONTINUE statement inside a DO UNTIL loop with PROC DS2 causes an infinite loop. The example code below illustrates the problem.

proc ds2;
   data _null_;
      method init();
         do until (1);
            put 'loop';
            continue;
         end;
      end;
   enddata;
run;
quit;

The results from the code above are as follows:

/* The SAS log fills up with this until the program is stopped */

loop
loop
loop
loop

There is currently no circumvention for this problem other than removing the CONTINUE statement.