anchor.diff:         if SourcePosition<=SourceLength then begin
           case Source[SourcePosition] of
            '0'..'9':begin
  -          Value:=byte(ansichar(Source[SourcePosition]))-byte(ansichar('0'));
  +          Value:=byte(TFLRERawByteChar(Source[SourcePosition]))-byte(TFLRERawByteChar('0'));
             inc(SourcePosition);
             while (SourcePosition<=SourceLength) and (Source[SourcePosition] in ['0'..'9']) do begin
  -           Value:=(Value*10)+(byte(ansichar(Source[SourcePosition]))-byte(ansichar('0')));
  +           Value:=(Value*10)+(byte(TFLRERawByteChar(Source[SourcePosition]))-byte(TFLRERawByteChar('0')));
              inc(SourcePosition);
             end;
             result:=NewBackReferencePerIndex(Value,false);
  
positive.code:      s:=TFLRE(Instance).DumpRegularExpression;
       Len:=length(s);
       if Len>0 then begin
        GetMem(RegularExpression^,(Len+1)*SizeOf(AnsiChar));
        Move(s[1],RegularExpression^[0],Len);
        RegularExpression^[Len]:=#0;
       end else begin
  
negative.code: 
   if not HadReset then begin
    // Connect the last state to the new state with the current char
    State.NextStates[Instance.ByteMap[byte(TFLRERawByteChar(CurrentChar))]]:=result;
   end;
  
  end;
  