anchor.diff:              else if (scan^ = PLUS) or (scan^ = PLUSNG)
                then BracesMin := 1 // PLUS
                else begin // BRACES
  -               BracesMin := PREBracesArg (scan + REOpSz + RENextOffSz)^;
  -               BracesMax := PREBracesArg (scan + REOpSz + RENextOffSz + REBracesArgSz)^;
  +               BracesMin := PREBracesArg (AlignToPtr(scan + REOpSz + RENextOffSz))^;
  +               BracesMax := PREBracesArg (AlignToPtr(scan + REOpSz + RENextOffSz + REBracesArgSz))^;
                 end;
              save := reginput;
              opnd := scan + REOpSz + RENextOffSz;
  
positive.code:            EXIT;
            end;
           LOOP, LOOPNG: begin //###0.940
             opnd := scan + PRENextOff (scan + REOpSz + RENextOffSz + REBracesArgSz * 2)^;
             min_cnt := PREBracesArg (scan + REOpSz + RENextOffSz)^;
             FillFirstCharSet (opnd);
             if min_cnt = 0
              then FillFirstCharSet (next);
  
negative.code:   UNTIL false;
    // Set Next 'pointer'
    if val < scan
     then PRENextOff (AlignToPtr(scan + REOpSz))^ := - (scan - val) //###0.948
     // work around PWideChar subtraction bug (Delphi uses
     // shr after subtraction to calculate widechar distance %-( )
     // so, if difference is negative we have .. the "feature" :(
  